使用本地IDEA连接服务器远程构建部署Docker服务

一、前置准备工作

1.1 安装配置docker

  1. 本机电脑上安装:docs.docker.com/desktop/set... 2)
  2. 目标服务器(Linux)安装Docker :

暂时无法在飞书文档外展示此内容

  1. 配置docker国内镜像源/代理
bash 复制代码
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"
    ]
}
  1. 重启docker,注意由于走的是守护程序daemon,所以daemon进程也需要重启。
bash 复制代码
sudo systemctl daemon-reload                 #重启daemon进程
sudo systemctl restart docker                 #重启docker

PS:详细的docker国内镜像源配置及代理设置

blog.csdn.net/Lichen0196/...

1.2 IDEA连接远程服务器和docker

配置FTP连接

连接远程服务器中的docker,选用ssh连接

二、操作流程

2.1 目标服务器拉去源代码

  1. 创建工作目录
bash 复制代码
mkdir /root/项目名-docker
mkdir /root/项目名-docker/source-code
mkdir /root/项目名-docker/build-docker-images
mkdir /root/项目名-docker/deploy
cd /root/项目名-docker/source-code
  1. git clone 仓库名地址

2.2 应用构建编译打包

  1. Java后端服务ruoyi-ai.jar包文件构建

    1. (1) 修改application-prod.yml 内容:
  1. IDEA构建编译Jar包

(1)IDEA中的Maven中,勾选prod

(2)同步Maven 更改

(3)执行Clean--package

在target目录中会生成 ruiyi-admin.jar

  1. 构建业务容器镜像

(1)构建完jar包后,在ruoyi-admin目录下,创建Dockerfile文件,内容如下:

bash 复制代码
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 运行业务容器

  1. 进入含有docker-compose.yaml 目录中,修改docker-compose.yaml, 指定创建容器所使用的镜像

前提:运行业务服务之前需要先运行基础服务,如: mysql 、redis、nginx等。

使用命令:docker-compose up -d mysql nginx-web redis minio

  1. 运行业务容器
css 复制代码
docker compose up --no-deps -d ruoyi-backend
相关推荐
计算机程序设计小李同学1 天前
基于 Spring Boot + Vue 的龙虾专营店管理系统的设计与实现
java·spring boot·后端·spring·vue
苦逼IT运维1 天前
从 0 到 1 理解 Kubernetes:一次“破坏式”学习实践(一)
linux·学习·docker·容器·kubernetes
萧曵 丶1 天前
Docker 面试题
运维·docker·容器
Charlie_lll1 天前
力扣解题-[3379]转换数组
数据结构·后端·算法·leetcode
VX:Fegn08951 天前
计算机毕业设计|基于springboot + vue云租车平台系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
汤姆yu1 天前
2026基于springboot的在线招聘系统
java·spring boot·后端
为什么不问问神奇的海螺呢丶1 天前
n9e categraf docker 监控配置
运维·docker·容器
青树寒鸦1 天前
wsl的docker备份mongo和迁移
运维·mongodb·docker·容器
计算机学姐1 天前
基于SpringBoot的校园社团管理系统
java·vue.js·spring boot·后端·spring·信息可视化·推荐算法
hssfscv1 天前
Javaweb学习笔记——后端实战8 springboot原理
笔记·后端·学习