前言 从大二开始我就一直想着能做个自己的网站,今年年初搭建的这个博客只是静态的页面,不能和后端进行数据交互,所以还是不太满足。正巧最近阿里云对大学生的优惠活动云翼计划 开始了,我直接上去免费领了台ECS服务器来搭建我的毕业设计后端。这篇博客就来讲解整个阿里云服务器配置的过程和后端spring boot
项目的部署
准备工作
首先要有远程连接服务器的工具Xshell
和远程文件传输工具Xftp
,这两个在谷歌都有免费社区版下载
阿里云买一台服务器(或云翼计划直接免费领)
在云服务器管理控制台 里找到自己刚刚购买的服务器实例,重置并设置密码
找到安全组
的选项,点击配置规则
,在入方向
中手动添加规则来开放外部应用可访问的端口
填写规则时协议和类型默认自定义TCP
,授权对象默认0.0.0.0/0
,主要要填的是端口范围,填写规则为起始端口号/结束端口号
,比如要开放MySQL
默认的访问端口3306
则直接填3306/3306
。这只是开放端口的第一步,后面还要在服务器防火墙里开启端口访问
配置服务器 通常我们购买服务器都会选择linux
操作系统,因为相比于常用的Windows
,其轻量简洁且内存占用小,权限明确,对于开发者极其友好。使用Xshell
连接上服务器后展示的是控制台,因为没有图形化界面,所以在服务器中所有的操作都要通过linux
控制台来实现,因此linux
的基本操作比如cd
、ll
、pwd
、vim
等都要了解一下,当然不熟悉也可以实时通过搜索引擎现学现卖。
git的安装 对于开发者来说,git
几乎是必不可少的工具,所以一定要装上。在服务器上直接使用命令
安装完毕可以使用命令
来检查是否安装成功,卸载也可以直接使用
SSR的安装配置 因为我是写爬虫的,所以代理是必不可少的一部分,我的代理池主要是通过SSR
来获得,所以我的服务器中也要配置SSR。在网上找了很久,最终找到了@TyrantLucifer 大佬开发的可供linux
命令行使用的工具ssr-command-client ,使用教程就在大佬的github
仓库上,有兴趣的可以自己去看。这里就不细说了
jdk的安装 因为我是写java
的,所以还要安装java
的jdk
首先查看云端支持的jdk
版本
选择jdk
版本安装(这里安装的是openjdk1.8
) yum install -y java-1.8.0-openjdk
检查是否安装成功
查看jdk
的安装目录(如有需要)
MySQL的安装配置 直接运行以下命令安装最新的版本号为8的MySQL
运行以下命令查看是否安装成功
配置MySQL
服务开机自启 systemctl enable --now mysqld
查看MySQL
服务是否已启动
执行MySQL
安全性操作并设置密码 mysql_secure_installation
命令运行后一路yes
(如果需要远程使用root
用户账号登录则在选no
),密码验证策略(设置密码的强度)按自己需求来
创建新用户账号(MySQL8的版本使用方法) # kbdog是用户名,%是允许外部连接访问的IP,通常使用%指代所有IP,123即是该例子所用密码 create user 'kbdog'@'%' identified by '123'; # 赋予所有权限 grant all privileges on *.* to 'kbdog'@'%'with grant option; # 刷新权限 flush privileges; # 具体账号信息可在mysql库中的user表中查看 select * from user;
开放MySQL的端口 # 首先进入/etc/sysconfig 查看是否有iptables文件 cd /etc/sysconfig # 若没有iptables文件 则执行以下命令 yum install iptables-services # vim iptables文件 # 增加开放3306端口的语句一定要在icmp-host-prohibited之前 # 若是以后想开放其他端口也是在这里添加 只需要将3306替换成其他端口号 -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT # 重启防火墙 systemctl restart iptables.service # 查看防火墙状态 service iptables status
Spring Boot项目的部署 前面的准备工作都做完之后就可以开始部署项目了
项目打包成jar包 使用IDEA
可以直接将整个项目打包,在IDEA
界面的Maven
栏中先clean
然后package
打包成jar
把jar包穿上服务器 使用Xftp
把jar
包传上服务器自定义位置
使用命令运行部署 项目访问的端口号要预先在阿里云服务器管理控制台 的安全组中预先配置,配置后可直接使用运行jar
包的命令运行访问
这种方式只会在前台运行,如果关闭了与服务器的连接项目也会关闭,推荐使用后台运行的命令
这样项目就在后台运行了起来,如果想把所有输出的内容打印出来还可以使用
nohup java -jar XXX.jar > XXX.out&
这样XXX.jar
项目的日志就会打印到同一目录的XXX.out
文件中了
服务器中防火墙开放项目访问端口号 如果在阿里云服务器管理控制台 中配置过端口号仍访问不了则可手动通过防火墙开启
# 添加端口号 firewall-cmd --zone=public --add-port=端口号/tcp --permanent # 重新加载 firewall-cmd --reload
查看部署情况 查看所有正在运行的java
项目
也可通过端口号查看
停止项目 找到项目运行的进程号PID
,直接kill
引流
参考资料