linux安装Java环境并部署发布springboot项目


部署java开发环境:
系统环境 腾讯云OpenCloudOS8.6

1,新建目录(非必须,自行选择)

tmp存放临时安装包

mkdir -p /data/tmp

#service存放软件环境

mkdir -p /data/service

gitee存放代码版本控制库

mkdir -p /data/gitee
2,配置jdk环境

进入安装包目录

cd /data/tmp

xshell非常好用,有时候想在windows和Linux上下载或上传文件可以通过配置然后使用rz和sz命令实现

# CentOS安装工具lrzsz 
yum install lrzsz
# ubuntu安装工具
sudo apt install lrzsz

上传文件,通过rz实现

下载文件,通过sz实现

解压

tar -zxvf jdk-8u141-linux-x64.tar.gz

把解压出来的文件夹转移到统一的地方

mv /data/tmp/jdk1.8.0_141 /data/service/jdk1.8.0_141

修改环境变量/etc/profile,JAVA_HOME修改为自己的jdk路径。

vim /etc/profile
export JAVA_HOME=/data/service/jdk1.8.0_141
export PATH=$PATH:$JAVA_HOME/bin

使环境变量生效

source /etc/profile

检查是否配置成功

java -version
3,配置maven

进入安装包目录,解压

cd /data/tmp
tar -zxvf apache-maven-3.6.3-bin.tar.gz
mv apache-maven-3.6.3 /data/service/

修改环境变量/etc/profile,MAVEN_HOME修改为自己的路径。

export MAVEN_HOME=/data/service/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin

使环境变量生效

source /etc/profile

检查是否配置成功

mvn -v

配置settings.xml,添加本地仓库地址 /usr/local/maven/repository

mkdir -p /usr/local/maven/repository
4,安装git环境

通过yum安装,本方法最简单。但是无法控制安装的版本

yum -y install git

检查是否配置成功

git --version

生成sshkey

ssh-keygen -t rsa -C "xx@xx.com" //(三次回车,可具体个人自定义配置)
cat ~/.ssh/id_rsa.pub
5,安装docker

卸载旧版本

sudo yum remove docker \
                docker-client \
                docker-client-latest \
                docker-common \
                docker-latest \
                docker-latest-logrotate \
                docker-logrotate \
                docker-engine

设置仓库,安装所需的软件包

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm

使用官方源地址(比较慢)

sudo yum-config-manager \
  --add-repo \
  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装 Docker Engine-Community

sudo yum install docker-ce docker-ce-cli containerd.io

启动 Docker

sudo systemctl start docker
6,安装mysql(可使用云数据库,自行选择)

在Docker中安装MySQL。
查看可用的 MySQL 版本

docker search mysql

拉取5.7版本

docker pull mysql:5.7

使用以下命令来查看是否已安装了 mysql

docker images

创建配置文件目录

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=dasqW -d mysql:5.7

进入docker容器设置env LANG=C.UTF-8

docker exec -it mysql env LANG=C.UTF-8 bash

ctrl + d 退出 docker bash
外部连接需要腾讯云开放3306端口

7,安装redis
docker pull redis:latest
docker run -itd --name redis-test -p 6379:6379 redis
8,安装node
xf node-v14.15.4-linux-x64.tar.xz解压
cd node-v14.15.4-linux-x64/ // 进入解压目录 ./bin/node -v // 执行

node命令 查看版本
解压文件的 bin 目录底下包含了 node、npm 等命令,我们可以使用 ln 命令来设置软连接

mv /data/tmp/node-v14.15.4-linux-x64 /data/service/
ln -s /data/service/node-v14.15.4-linux-x64/bin/npm   /usr/local/bin/
ln -s /data/service/node-v14.15.4-linux-x64/bin/node   /usr/local/bin/
9,安装nginx

首先安装nginx前置软件

yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

下载nginx软件安装包

cd /data/tmp
wget http://nginx.org/download/nginx-1.19.6.tar.gz
tar -zxvf nginx-1.19.6.tar.gz
cd nginx-1.19.6

设置安装目录为/usr/local/nginx

./configure --prefix=/usr/local/nginx
make
make install

启动nginx

/usr/local/nginx/sbin/nginx
10,代码

新建目录上传代码(安装git的情况直接clone代码即可)
/data/gitee/

解压代码

unzip xx.zip 
11,打包部署

cd 项目路径

mvn clean package

查看jar包 cd 项目/target/
运行

mkdir -p /data/app/ruoyi-vue
cp /data/gitee/RuoYi-Vue/ruoyi-admin/target/ruoyi-admin.jar /data/app/ruoyi-vue/ruoyi-admin.jar
cd /data/app/ruoyi-vue/
nohup java -jar ruoyi-admin.jar &

前端代码发布
cd /前端目录

npm install
npm run build:prod
mkdir /data/app/ruoyi-ui
mv dist/* /data/app/ruoyi-ui/

把生成好的 dist 文件夹的静态文件发布到你的 nginx 或者静态服务器即可,其中的 index.html 是后台服务的入口页面。

vim /usr/local/nginx/conf/nginx.conf

后台端口8080

location / {
    root   /data/app/ruoyi-ui;
    try_files $uri $uri/ /index.html;
    index index.html index.htm;
}

location /prod-api/ {
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_pass http://localhost:8080/;
}

重新加载配置文件nginx

/usr/local/nginx/sbin/nginx -s reload

文章作者: W WX
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 W WX !
  目录