SpringBoot项目部署阿里云服务器
Posted 程序dunk
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringBoot项目部署阿里云服务器相关的知识,希望对你有一定的参考价值。
ESC阿里云服务器准备
1、在阿里云官网注册登录完成个人实名认证和学生认证。就可以享受学生价格购买阿里云服务器。博主购买的是98.83元一年的2核 2 GiB的ESC云服务器。
2、在阿里云控制台创建实例,注意这里创建实例后就可以看到公网地址,设置实例密码。这里还有一个重要的设置,设置安全组规则,开放3306、8080和18081(springboot项目的服务端口,提前打开)端口。不然部署项目后,无法访问到该项目。
下载XShell和XFtpa
XShell官网
XFtp可以将本机的文件传到linux服务器上
XShell可以远程控制linux服务器
通过公网地址连接远程服务器,用户名为root,密码为刚刚设置的实例密码。
环境部署
在linux环境下
#tmp存放临时安装包
mkdir -p /data/tmp
#service存放软件环境
mkdir -p /data/service
#gitee存放代码版本控制库
mkdir -p /data/gitee
以上目录非必须,可以自行选择安装路径
JDK1.8
从oracle官方网站上下载1.8版本中的最新版的JDK。下载完成后,把文件通过WinSCP或者XFTP上传到服务器上。接着进行解压和配置环境变量。
#进入安装包目录,解压
cd /data/tmp
tar -zxvf jdk-8u261-linux-x64.tar.gz
#把解压出来的文件夹转移到统一的地方
mv /data/tmp/jdk1.8.0_261 /data/service/jdk1.8.0_261
#修改环境变量/etc/profile,JAVA_HOME修改为自己的jdk路径。
vim /etc/profile
export JAVA_HOME=/data/service/jdk1.8.0_261
export PATH=$PATH:$JAVA_HOME/bin
#使环境变量生效
source /etc/profile
#检查是否配置成功
java -version
java version "1.8.0_281"显示出JDK版本号则证明JDK环境搭建成功
Maven(版本 >= 3.0)
从Maven官方网站上下载最新版的压缩包。下载完成后,进行解压和配置环境变量。
#使用该命令在linux环境下下载maven
wget https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.8.1/binaries/apache-maven-3.8.1-bin.tar.gz
#进入安装包目录,解压
tar -zxvf apache-maven-3.6.3-bin.tar.gz
#修改环境变量/etc/profile,MAVEN_HOME修改为自己的jdk路径。
export MAVEN_HOME=/data/service/maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin
#使环境变量生效
source /etc/profile
#检查是否配置成功
mvn -v
Apache Maven 3.8.1
Maven home: /data/service/apache-maven-3.8.1
Java version: 1.8.0_281, vendor: Oracle Corporation, runtime: /data/service/jdk1.8.0_281/jre
Default locale: en_US, platform encoding: UTF-8
OS name: “linux”, version: “4.18.0-240.15.1.el8_3.x86_64”, arch: “amd64”, family: “unix”
出现以上信息maven环境搭建成功
Git
使用XFtpa可以不用安装Git
#通过yum安装,本方法最简单。但是无法控制安装的版本
yum -y install git
#检查是否配置成功
git --version
博主这里是将本地项目发布到了GitHub上之后,在服务器中通过git clone下载的,在这里项目可以通过xFtp直接移入服务器中。
这里需要生成ssh公钥,并需要在GitHub中配置公钥,以下是生成git ssh公钥的命令(具体过程,百度即可)
ssh-keygen -t rsa -C "xx@xx.com"
cat ~/.ssh/id_rsa.pub
这里只要确保把项目移入服务器中就OK了
Docker (mysql)
使用docker的方式安装mysql,首先安装docker
#卸载旧版本
sudo yum remove docker \\
docker-client \\
docker-client-latest \\
docker-common \\
docker-latest \\
docker-latest-logrotate \\
docker-logrotate \\
docker-engine
#安装 Docker Engine-Community
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager \\
--add-repo \\
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker
yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
启动docker
sudo systemctl start docker
安装MySQL
#查看可用的 MySQL 版本
docker search mysql
#拉取5.7版本
docker pull mysql:5.7
#创建配置文件目录
mkdir -p /data/docker/mysql/conf
#进入配置文件目录,添加一个配置文件
vim my.cnf
#启动镜像
docker run -p 3306:3306 --name mysql -v /data/docker/mysql/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
进入MySQL
#进入docker容器设置env LANG=C.UTF-8
docker exec -it mysql env LANG=C.UTF-8 bash
注意3:如果使用docker进入mysql数据库执行包含中文的sql语句,出现中文乱码的情况,需要在容器系统中设置使用中文包。所以进入docker容器时需要设置环境语言。
注意2:在mysql的镜像启动之前,创建配置文件目录,并放置好配置文件。这样mysql启动的时候,就可以直接使用配置好的参数。以下内容是配置数据库的字符集为utf-8。
注意1:MySQL(5.7.19)的默认配置文件是 /etc/mysql/my.cnf 文件。如果想要自定义配置,建议向 /etc/mysql/conf.d 目录中创建 .cnf 文件。新建的文件可以任意起名,只要保证后缀名是 cnf 即可。
这里讲一下如何自己设置mysql的编码格式
mkdir -p /data/docker/mysql/conf
cd /data/docker/mysql/conf
vim my.cnf
在my.cnf中填入配置
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
设置mySQL
#进入docker容器设置env LANG=C.UTF-8
docker exec -it mysql env LANG=C.UTF-8 bash
下面就是mysql的命令了
mysql -uroot -p123456
到这里MySQL数据库环境就搭建好了。
退出数据库导入项目
这里需要提前将sql脚本引入目录下(可以借助XFtp)下面直接给出命令
cp /项目目录/sql脚本 /data/docker/mysql/conf/
#进入数据库
docker exec -it mysql env LANG=C.UTF-8 bash
mysql -uroot -p123456
create database if not exists blog character set 'utf-8';
use blog;
#执行sql脚本
source /etc/mysql/conf.d/blog.sql;
到此数据库信息导入成功
修改项目中的配置
这里不习惯使用vim命令的,可以直接在windows环境下修改好后,导入linux系统中就好,主要修改的地方有
1、application.yml中的数据源的username和password
2、application.yml中的server.port服务端口号,改为之前的18081.
启动项目
部署jar包
cd /data/gitee/blog/
mvn install
创建新的目录
mkdir -p /data/app/blog-admin
#将jar包移到新目录下
cp /data/gitee/blog/target/blog-0.0.1-SNAPSHOT.jar /data/app/blog-admin/blog.jar
cd /data/app/ruoyi-admin/
#部署项目
nohup java -jar blog-admin.jar &
tail -300f nohup.out
部署成功。
添加域名
购买域名,添加域名解析
以上是关于SpringBoot项目部署阿里云服务器的主要内容,如果未能解决你的问题,请参考以下文章
将SpringBoot项目及vue项目分别打包部署到阿里云服务器
如何让springboot打包的项目部署在阿里云上使用https和http方式访问
如何将SpringBoot 项目部署到阿里云服务器(jar包)