centos8搭建java环境部署项目
前言
搭建前后分离项目
前端使用nginx部署
后端使用docker-compose进行部署
一、项目后端部署
1.安装java
以JDK 1.8.0_152 为例
下载地址:JDK 1.8.0_152下载地址
1.1解压缩并移动到指定目录
解压缩
tar -zxvf jdk-8u152-linux-x64.tar.gz
创建目录
mkdir -p /usr/local/java
移动安装包
mv jdk1.8.0_152/ /usr/local/java/
设置所有者
chown -R root:root /usr/local/java/
1.2配置系统环境变量
vim /etc/environment
添加如下语句
export JAVA_HOME=/usr/local/java/jdk1.8.0_152
export JRE_HOME=/usr/local/java/jdk1.8.0_152/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
1.3配置用户环境变量
vim /etc/profile
添加如下语句
export JAVA_HOME=/usr/local/java/jdk1.8.0_152
export JRE_HOME=/usr/local/java/jdk1.8.0_152/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
使用户环境变量生效
source /etc/profile
1.4.测试是否安装成功
java -version
2.安装maven
以apache-maven-3.6.3为例
下载地址
2.1解压缩移动到指定目录
创建文件夹
mkdir -p /usr/local/maven
解压缩
tar -zvxf apache-maven-3.6.3-bin.tar.gz
2.2配置用户环境变量
export MAVEN_HOME=/usr/local/maven/apache-maven-3.6.3
export PATH=${MAVEN_HOME}/bin:${PATH}
2.3使环境生效
source /etc/profile
2.4测试是否安装成功
mvn -v
3.安装git拉取代码
3.1安装git
yum install git
3.2测试是否安装成功
git --version
3.3git生成密钥
ssh-keygen -t rsa -C "1303767599@qq.com"
一直回车就可以了
3.4配置密钥
我生成密钥文件在/root/.ssh下
把后缀为.pub的文件配置到代码仓库,然后拉取代码
4.安装docker和docker-compose
注:有多种安装方式,以下只列举我自己的安装方式
4.1安装docker
移除旧的版本:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
注:如果是centos8:
centos8默认使用podman代替docker,所以需要containerd.io,那我们需要安装一下
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 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
更新 yum 缓存:
sudo yum makecache fast
安装 Docker-ce:
sudo yum -y install docker-ce
查看已安装docker版本
docker version
启动 Docker 后台服务
sudo systemctl start docker
开机启动
systemctl enable docker
4.2镜像加速
在/etc/docker/daemon.json
请在该配置文件中加入(没有该文件的话,请先建一个):
阿里云有免费的加速器地址
{
"registry-mirrors": ["你的加速器地址"]
}
重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
4.3检查加速器是否生效
配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否生效,在命令行执行 docker info
,如果从结果中看到了如下内容,说明配置成功。
Registry Mirrors:
你的加速器地址
4.4安装docker-compose
在 Linux 上的也安装十分简单,从 官方 GitHub Release 处直接下载编译好的二进制文件即可。
例如,在 Linux 64 位系统上直接下载对应的二进制包。
sudo curl -L https://github.com/docker/compose/releases/download/1.17.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
4.5编写项目的Dockerfile
FROM anapsix/alpine-java:8_server-jre_unlimited
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN mkdir -p /opt/projects/qicai/log
WORKDIR /opt/projects/qicai
ADD ./target/qicai-0.0.1-SNAPSHOT.jar ./
EXPOSE 8113
CMD java -jar -Xms512m -Xmx512m -Xss256k -XX:SurvivorRatio=8 -Dspring.profiles.active=prod qicai-0.0.1-SNAPSHOT.jar
4.6编写docker-compose
version: '2'
services:
qicai:
build:
context: ./qicai
restart: always
container_name: qicai
image: qicai
ports:
- 8112:8112
4.7跳过测试打包项目
mvn clean package -Dskip.test=true
然后使用docker-compose启动
二、前端使用nginx部署
1.使用docker-compose安装nginx
version: '3.1'
services:
nginx:
restart: always
image: nginx
container_name: nginx
ports:
- 80:80
volumes:
- ./conf/nginx.conf:/etc/nginx/nginx.conf
- ./wwwroot:/usr/share/nginx/wwwroot
注:自己创建/conf/nginx.conf文件,否则启动自动创建会创建成一个文件夹