一、购买腾讯云服务器
- 腾讯云双11有活动,可以看秒杀活动,新用户2核4G只需要70一年,198三年,网站为链接,选择纯净版Centos 7.6版本即可。我买了三年的很划算
2. 没活动也可以选择腾讯学生云服务器,网站为链接,我选择的是第一个,你也可以根据流量来选择,然后立即购买后点立即购买,里面选Centos版本,没有域名可以+9元选购一个域名 点击管理控制台,进入管理界面
二、简单配置
2.1 进入控制台
进入控制台,点击购买的服务器->管理,上面还会有公网IP,后序需要使用的
2.2 配置防火墙
如果想从外网访问服务器的某个端口,我们需要为这个端口设置添加规则
- 点击防火墙按钮,添加规则
- 因为我们需要搭建个人博客,因此需要开放80端口,还需要访问MySql还需要添加3306端口,图中已添加80端口,再来添加下3306端口,选择MySql(3306)进行快速添加
2.3 配置访问密码
配置服务器登录密码,即远程登录root时的密码,按图中顺序点击配置 然后关机后就可以通过新密码远程登录了
三、远程ssh登录连接服务器
windows下可以使用Xshell、Putty、MobaXterm等软件,我一般使用MobaXterm 设置如下 配置完成后,点击左侧刚才新建的session,输入密码即可连接,连接后显示如下图所示,这个软件的左侧是文件区,右侧是命令行区
四、云服务器安装软件
4.1 安装JDK
yum -y list java* 可查看可用版本
- 命令行输入
yum install -y java-1.8.0-openjdk-devel.x86_64 进行安装 - 完成后,输入
java -version 测试是否安装成功,成功返回如下
4.2 安装MySql
只是部署简单Spring boot不使用MySql,可以暂不安装,直接看部署Spring boot
- 执行
rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 下载MySql 5.7安装包 - 执行
yum install -y mysql-server 进行安装 systemctl start mysqld 启动mysql- 依次执行
systemctl enable mysqld 和systemctl daemon-reload 设置mysql自启动 - mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个临时的默认密码,执行
cat /var/log/mysqld.log 查看临时密码 - 执行
mysql -u root -pXXXXX 进行登录,XXXXX为更改的密码 - 更改密码
执行SHOW VARIABLES LIKE 'validate_password%'; 查看密码策略 执行set global validate_password_length=6; 设置策略 密码长度为6 执行set global validate_password_policy=0; 设置策略为LOW 0 执行alter user user() identified by "XXXXX"; 更改密码 执行GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'XXXXX' WITH GRANT OPTION; 开放外网访问,XXXXX为更改的密码 执行flush privileges; 刷新权限 Ctrl+D退出MySql命令行 - 修改Mysql数据库的编码格式为UTF-8
执行vi /etc/my.cnf ,在最前面添加如下[client]
default-character-set=utf8
执行systemctl restart mysqld 重新启动即可 - 至此重新登陆,输入密码即可完成mysql的访问
- Idea中测试连接云服务器上的MySql
这样这个数据库不仅仅可以云服务器中的进程进行访问,也可以在其他任何连网设备上通过ip地址+端口号+用户名+密码进行访问
4.2 安装Redis
只是部署简单Spring boot不使用Redis,可以暂不安装
-
下载解压 执行yum install -y gcc 执行wget http://download.redis.io/releases/redis-5.0.14.tar.gz 执行tar -zxvf redis-5.0.14.tar.gz 解压 -
编译 执行cd redis-5.0.14 执行make -
安装 执行make install PREFIX=/usr/local/redis -
前台启动 执行cd /usr/local/redis/bin/ 执行./redis-server -
后台启动 执行cp /root/redis-5.0.14/redis.conf /usr/local/redis/bin/ ,从 redis 的源码目录中复制 redis.conf 到 redis 的安装目录 执行vi redis.conf 修改 redis.conf 文件,把 daemonize no 改为 daemonize yes 执行./redis-server redis.conf 后台启动 -
设置开机启动 执行vi /etc/systemd/system/redis.service 添加如下内容 [Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
设置开机启动,依次执行 systemctl daemon-reload systemctl start redis.service systemctl enable redis.service 执行ln -s /usr/local/redis/bin/redis-cli /usr/bin/redis 创建redis命令软连接 测试 redis
五、Spring boot项目部署
5.1 项目建立
- 创建项目
- 编写简单程序
- 本地浏览器测试
- 更改项目从80端口启动
- 打包
成功后出现这个包
5.2 上传项目到云服务器
- 先在文件管理器中打开
- 拖到文件到服务器
5.3 运行
-
执行netstat -anp | grep 80 查看是否有80端口被占用 如下图80未被占用,3306被mysqld占用 -
执行cd ~ 切换到home目录 -
执行java -jar TestHomePage-0.0.1-SNAPSHOT.jar 前台运行,关闭终端后进程也会被关闭,因此一般用nohup java -jar TestHomePage-0.0.1-SNAPSHOT.jar > log.file 2>&1 & 后台运行,上面的2 和 1 的意思如下: 0 标准输入(一般是键盘) 1 标准输出(一般是显示屏,是用户终端控制台) 2 标准错误(错误信息输出) 将运行的jar 错误日志信息输出到log.file文件中,然后(>&1)就是继续输出到标准输出(前面加的&,是为了让系统识别是标准输出),最后一个&,表示在后台运行 运行结果如下 -
输入公网IP远程浏览器访问
5.4 停止
- 执行
netstat -anp | grep 80 查看80端口占用进程,并记住进程号 - 执行
kill pid 停止进程
六、绑定域名
6.1 购买域名
购买服务器的时候,选购了域名
6.2 配置域名
-
进入域名控制台实名认证 -
点击解析,添加记录 添加记录 添加完成后如图 -
输入域名进入
6.3 申请SSL
- 鼠标移动到SSL,点免费申请
- 确认后点详情
- 域名验证
通过后 - 进行一键HTTPS
备案后继续补充
6.4 域名备案
购买域名72小时后进行备案
七、博客部署
同理打包自己的博客,进行部署,后序补充
至此,就基本结束了,其他springboot项目或者个人博客都可以通过这种方式部署
参考
SpringBoot项目部署到阿里云服务器详细步骤 记录购买阿里云服务器并成功部署SpringBoot项目的全过程 Centos7安装Redis 参考的很多博客有些较杂糅,或者老旧,本篇实尝试的是较为简洁方法,一步步实际操作并记录,因此较为准确
|