当我写这篇文章时,标志着,我从学习java以来,最大的盲点,最深的执著,最强的好奇心,都被满足。
不管你有没有参加工作,这篇文章都能给你带来或多或少的启发,也有一些公司就是使用这种方法,将正式项目部署上线的。
就算你只有一台电脑,一个项目,其他什么也没有,也可以通过这篇文章实现项目部署上线,并在公网访问。
第一步:在阿里云申请一个试用的免费服务器(人人都可以,不需要是学生)
阿里云地址:https://www.aliyun.com/
①此刻是2021年3月16日:点击"最新活动"–>“阿里云试用中心”–>“云服务器突发性能型t5”(ps:如果以后没有了这种服务器的试用,可以选择其他,无伤大雅,主要免费就行)
点击试用后,选择服务器参数和服务器地址(我记得我随便选的是杭州),我由于已经试用,无法再次点击进去,所以这里不能用图来指导了。
会提示你付款,金额为0元,当时我还挺怕,担心一个月过后会自动续费,还去找了人工客服,,仔细询问后才安心购买试用,尴尬
补充:阿里云官网可能随着时间推移,风格和样式可能发生变化,最终办法就是直接在搜索栏搜索“免费使用”,可以确保找到试用中心
购买完毕后,点击右上角的’‘控制台’',寻找自己刚刚购买的服务器。进入控制台后,进行如下操作
点击"续费管理",取消自动续费
点击创建实例下面的蓝色乱码,可以配置信息,包括改服务器密码,改实例名,等等
点击蓝色乱码后,就是如下的页面
好了,云服务器这样就准备的差不多了,开始进入第二步
宝塔官网地址:https://www.bt.cn/
一定要选linux版本哦,我们的云服务器就是linux版本,点击立即安装,就会跳转到这个页面,往下拉一点,复制如下命令:
远程连接刚刚的云服务,可以使用xshell之类的远程连接工具
(如果你不知道这类工具,那你就是连linux都没学过,还是别往下看了吧,这篇文章不适合你,先去补一补linux基础吧)
如下:
连接成功之后,输入刚刚复制的命令,点击回车(别直接复制我这里的命令,去复制宝塔官网的命令)
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
输入y,接下来就是等待宝塔安装了,如下,表示安装成功,有一个网址,和一个账户和密码,
把这三个复制下来,保存下来
然后访问该网址,输入账户和密码,就可以进入宝塔面板了。如下:
进来以后,点击软件商店,安装如下12个软件(如果你的项目使用的rabbitmq,mongodb,或者其他的技术,可以在这里搜索,下载,这12个软件只针对我自己的个人项目奥
ps(php也得装,就算你是后端项目)):
然后把这些软件都启动起来
如果启动一切ok,那就恭喜你,运气不错,
如果失败,无法连接上redis(我遇见了这个问题)那也有可能
应该是本地无法连接云服务器上的redis,可以做以下两件事:
1.在我们的阿里云服务器上配置安全组,将redis的端口6379放行(上文有提到过)
2.在宝塔也对端口进行放行
我在两边都进行端口放行后,项目启动成功,说明连接上线上数据库和线上redis了。
可以直接修改pom文件,点击父项目的package,进行打包(这种打包方式,百度,有一大堆教程)
也可以像我一样,不修改pom文件,点击如下的Edit Configuration
添加如下命令:clean package -DskipTests -f pom.xml
然后就会多一个如下的Run Configurations文件,双击打包
打包完成后,会生成jar包,默认是在target目录(如果你的项目有多个模块,就会在不同的target目录下,都有jar包,我的这个项目是单模块的,所以就只有这一个jar包)
现在jar包已经生成了,接下来就是将jar包放到云服务器上去了。
打开宝塔,进入ftp,创建FTP
点击进入根目录
进入后,可以创建一个app目录,也可以不创建,点击上传,将jar包拖入目录,如下:
下图中的jar包就是我上传的文件了,至于另外两个文件,与本文无关,请忽略
linux下使用nohup java -jar xxx.jar &
如果想停止jar运行,ps -ef查看进程(进程多的话也可以加上grep),找到对应的java进程,kill掉。
可以使用xshell 5之类的工具运行,也可以在宝塔的终端运行,如下:
运行成功后,可以通过在浏览器访问某个接口(如果使用了spring security之类的权限工具,请注意权限问题,不能直接访问接口),如获取用户列表的接口getUserList接口:
http://云服务器ip:项目端口/接口访问路径,如果请求成功,就是完美部署成功。
就比如我在项目中配置了swagger,那么我只需要看看能否访问swagger就行了,如下:
可以看到我成功访问了swagger,并且请求接口成功,说明后端项目就部署,上线成功了。
这里没有涉及到前端项目的上线,所以可以调用接口成功就可以了。
回顾整篇文章,确实是做到了,只需要一台电脑,一个后端项目, 就可以从无到有,将java项目部署上线,并能够在公网访问。写的太不容易了,整篇文章下来,保姆级教学,耗时又耗脑,不容易啊啊啊啊 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊
也许会有些错漏,如果各位在尝试的过程中,遇到了什么问题,可以问我,我尽量解答,与君共勉。
----我是“道祖且长”,一个在互联网“苟且偷生”的Java程序员