前言

做安卓开发也有三四年了,但是对网络这块什么http、tcp/ip之类的一直不理解。并且想自己做一些小项目练练手的时候,数据库直接存在apk里总不是滋味,所以这次站在安卓开发的角度尝试着做一做简单的后台工作,不会特别深入,同时如果也错误也欢迎各位指出

部署前的准备

  1. SptringBoot项目编译出的jar包

最终效果

步骤

购买云服务器

这里使用的是腾讯云服务器,因为只是个人平常开发使用,直接到云服务器官网购买最便宜的那种即可,配置图如下,并且新人有几个月的试用时间(我自己的试用时间被之前给浪费掉了~)



我们在购买成功之后需要在上图关注的是自己云服务器的账号、密码以及外网(或者叫公网)ip

配置云服务器

配置防火墙

由于默认云服务器是不开放端口的(这里我并不确定是完全不开放还是只开放部分,欢迎大神在评论补充),比如我们之后在浏览器需要通过类似xxx.xxx.xxx.xxx:8080来访问我们的应用,所以我们还需要配置我们云服务器的防火墙,这里我图方便直接开放了所有端口,各位如果有更高的要求可以自行设置

  1. 新建安全组

  2. 把安全组关联到我们的云服务器,就是点击上面创建之后安全组的管理实例即可,这里因为我之前已经添加过了,所以就没有显示我的云服务器

好了,之后就不会因为防火墙把我们端口请求给拦截了

本地环境准备Xshell与Xftp

云服务器是linux环境,我们需要Xshell可以更方便的在自己的电脑控制云端服务器。而Xftp则方便我们把一些本地文件直接拷贝到云端。Xshell与Xftp自行百度或去Xmanager官网下载即可。

Xshell新建与服务器的连接

输入账号密码,账号默认就是root,不记得的可以自己到云服务控制台看一下

出现类似下面的状态就是连接成功!

Xftp则可以直接通过下图这里的传输新文件从Xshell打开,就不再赘述

配置jdk

下载jdk包
  1. 因为需要运行SpringBoot项目的jar包,所以肯定是需要准备jdk环境的,与在windows安装jdk环境类似,我们需要在自己电脑先去java官网或者直接百度去下载linux环境的jdk安装包,注意要和自己本地的jdk版本保持一致,我这里都是1.8版本的。

如下就是我们需要下载的包,是以tar.gz结尾的



2. 在XShell中通过mkdir指令创建/usr/java/目录

# 跳转到usr文件夹
cd /usr/
# 创建java文件夹
mkdir java
  1. 接下来通过xftp传输到云服务器的/usr/java/目录

配置jdk环境

之后的配置jdk环境其实按照腾讯云官方的配置jdk环境文档来操作即可,如下的操作我基本是照抄官方文档

  1. 解压jdk安装包
# 给权限,注意后面跟的是自己的文件名
chmod +x jdk-8u144-linux-x64.tar.gz
# 解压jdk安装包
tar -xzvf jdk-8u144-linux-x64.tar.gz
  1. 类似于windows配置环境变量,linux也需要进行对应操作,是通过修改profile配置文件实现的
# 修改环境变量的文件
vi /etc/profile
  1. 进入修改界面后,按i直接进入编辑模式,并在profile文档最末尾粘贴如下内容,注意版本号的路径要换成自己下载的jdk版本号
# set java environment
export JAVA_HOME=/usr/java/jdk1.8.0_144
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
  1. 按下 Esc 键退出编辑模式,输入:wq保存并关闭文件
  2. 通过如下指令让环境变量生效
source /etc/profile
  1. 与windows一样,通过如下指令查看jdk是否安装成功
java -version

部署SpringBoot项目

  1. 通过Xftp把我们的项目jar包复制到云服务器中,这里就不贴图了,我直接放到了/root文件夹下

  2. 运行jar包,这一步就很简单了,直接通过java指令运行即可

# 后接我的项目jar包名,记得修改成你对应的项目jar包
java -jar arkights-0.0.1-SNAPSHOT.jar

运行后出现如下界面就是运行成功了,✿✿ヽ(°▽°)ノ✿

  1. 最后再试一下效果

引用

感谢以下大神的相关博文

  1. SpringBoot项目如何部署到公网(云服务器)
  2. Spring boot项目部署到腾讯云服务器

后记

接下来我会尝试实现https与域名相关,希望能够真正的做个自己的小应用出来~

部署SpringBoot项目jar包到云服务器的更多相关文章

  1. 部署Flask项目到腾讯云服务器CentOS7

    部署Flask项目到腾讯云服务器CentOS7 安装git yum install git 安装依赖包 支持SSL传输协议 解压功能 C语言解析XML文档的 安装gdbm数据库 实现自动补全功能 sq ...

  2. Docker部署web项目-jar包

    一.Docker部署web项目-jar包 ①搜索mysql镜像 docker search mysql ②拉取镜像至本地仓库(本文选取的mysql镜像5.7版本) docker pull mysql/ ...

  3. springboot项目jar包运行

    springboot项目jar包运行 参考 Linux后台运行java的jar包 步骤 进入maven项目中,打包项目. mvn package -Dmaven.test.skip=true 运行ja ...

  4. 使用maven构建项目时,SSM和springboot项目的打包与云服务器部署

    下面讲讲如何打包SSM和springboot项目,并部署到云服务器上. 由于使用的IDE不同,有的使用eclipse,有的使用idea,所以如果在IDE中按照 maven clean 再 maven ...

  5. SpringBoot:springboot项目jar包如何引入外置配置文件

            springboot项目打成jar包,默认读取的classpath路径下的配置文件,config.properties是自定义配置文件. 如果要把config.properties配置 ...

  6. 在CentO7系统上配置Springboot项目jar包开机自启动

    官方文档地址:https://docs.spring.io/spring-boot/docs/current/reference/html/deployment.html#deployment-ins ...

  7. windos上安装jenkins部署springboot的jar包(未运行,只是在打包并上传linux成功了)

    流程: 从linux上的svn拉取代码,到本地(windos)jenkins的工作区间的workspace,然后通过构建,打包,部署到linux上 环境: windos上安装:maven jdk je ...

  8. SpringBoot项目jar包启动脚本

    startup.bat @echo off set path=X:\xxxxxxx\Java\JDK\jre\bin START "项目名" "%path%\java&q ...

  9. shell脚本运行springboot项目jar包

    #!/bin/bash APP_NAME=AutomationGuide-0.0.1-SNAPSHOT.jar #使用说明,用来提示输入参数 usage() { echo "please e ...

随机推荐

  1. tf.app.flags与argparse功能类似

    https://blog.csdn.net/ei1990/article/details/76423277 tensorflow中tf.app.flags与argparse模块有点类似,通过它们都可以 ...

  2. JUC 常用4大并发工具类

    什么是JUC? JUC就是java.util.concurrent包,这个包俗称JUC,里面都是解决并发问题的一些东西 该包的位置位于java下面的rt.jar包下面 4大常用并发工具类: Count ...

  3. 2020 巅峰极客 WP_ Re

    第一题:virus 是一个win32 的题,没给加壳. 主函数: int __cdecl main(int argc, const char **argv, const char **envp) { ...

  4. Magicodes.IE之花式导出

    总体设计 Magicodes.IE是一个导入导出通用库,支持Dto导入导出以及动态导出,支持Excel.Word.Pdf.Csv和Html.在本篇教程,笔者将讲述如何使用Magicodes.IE进行花 ...

  5. 概率派VS贝叶斯派

    机器学习中的MLE和MAP两大学派的争论: 频率学派 - Frequentist - Maximum Likelihood Estimation (MLE,最大似然估计): 频率学派认为世界是确定的, ...

  6. Python练习题 037:Project Euler 009:毕达哥拉斯三元组之乘积

    本题来自 Project Euler 第9题:https://projecteuler.net/problem=9 # Project Euler: Problem 9: Special Pythag ...

  7. AD技巧之原理图元器件统一重新编号

    本文将简要介绍Altium Designer中如何进行原理图元器件统一命名,这是Altium Designer软件一个小技巧,在学习和工程实践中,都十分有用的技能. 第一步:打开原理图 第二步:点击& ...

  8. Bayer Pattern——RGGB

    原博客地址:https://blog.csdn.net/joe9280/article/details/46952947 参考:https://blog.csdn.net/wgx571859177/a ...

  9. 【题解】[APIO2010]特别行动队

    Link 题目大意:一段区间的贡献是\(ax^2+bx+c,x=\sum v\),求一个划分让总区间的价值最大.分段必须连续. \(\text{Solution:}\) 设计\(dp[i]\)表示前\ ...

  10. 引用类型之Array(二)

    操作方法 concat( ) concat() 方法用于连接两个或多个数组. 该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本. 语法 arrayObject.concat(arrayX,a ...