一、前置准备工作
1.1 安装配置docker
- 本机电脑上安装:docs.docker.com/desktop/set… 2)
- 目标服务器(Linux)安装Docker :
暂时无法在飞书文档外展示此内容
- 配置docker国内镜像源/代理
sudo vim /etc/docker/daemon.json
添加所需要镜像:
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://ccr.ccs.tencentyun.com"
]
}
4. 重启docker,注意由于走的是守护程序daemon,所以daemon进程也需要重启。
sudo systemctl daemon-reload #重启daemon进程
sudo systemctl restart docker #重启docker
PS:详细的docker国内镜像源配置及代理设置
1.2 IDEA连接远程服务器和docker
-
配置FTP连接
-
连接远程服务器中的docker,选用ssh连接
二、操作流程
2.1 目标服务器拉去源代码
- 创建工作目录
mkdir /root/项目名-docker
mkdir /root/项目名-docker/source-code
mkdir /root/项目名-docker/build-docker-images
mkdir /root/项目名-docker/deploy
cd /root/项目名-docker/source-code
2. git clone 仓库名地址
2.2 应用构建编译打包
-
Java后端服务ruoyi-ai.jar包文件构建
- (1) 修改application-prod.yml 内容:
- IDEA构建编译Jar包
(1)IDEA中的Maven中,勾选prod
(2)同步Maven 更改
(3)执行Clean--package
在target目录中会生成 ruiyi-admin.jar 包
- 构建业务容器镜像
(1)构建完jar包后,在ruoyi-admin目录下,创建Dockerfile文件,内容如下:
FROM openjdk:17-jdk
RUN mkdir -p /ruoyi/server/logs \
/ruoyi/server/temp
WORKDIR /ruoyi/server
COPY ./target/ruoyi-admin.jar ./ruoyi-admin.jar
ENTRYPOINT ["java","-jar","ruoyi-admin.jar"]
(2)连接目标服务器中的docker,依据本地IDEA中的Dockerfile配置创建镜像。创建镜像前可进行配置,
若勾选存储为项目文件,则会在根目录下创建.run文件夹
(3)在IDEA服务中指定对应的docker配置点击运行则会在目标服务器的docker中构建出相应的镜像;
2.3 运行业务容器
- 进入含有docker-compose.yaml目录中,修改docker-compose.yaml, 指定创建容器所使用的镜像
前提:运行业务服务之前需要先运行基础服务,如: mysql 、redis、nginx等。
使用命令:docker-compose up -d mysql nginx-web redis minio
- 运行业务容器
docker compose up --no-deps -d ruoyi-backend