【2025】使用docker compose一键部署项目到服务器(4)

目录💻

前言

该篇文章主要是使用idea通过docker-compose.yml构建容器集合并且进行统一管理更新

该专栏主要为介绍通过docker compose实现容器编排部署

一、部署准备

因为我们的项目直接部署会出现资源限制问题,需要在部署项目的服务器的docker添加下面配置

vi /usr/lib/systemd/system/docker.service

找到ExecStart=的位置,在后面添加对应内容

bash 复制代码
--default-ulimit nofile=65536:65536     --default-ulimit nproc=60000:60000

二、本地idea配置docker和docker compose执行器

如果本地安装了docker则跳过这一步

docker:https://download.docker.com/win/static/stable/x86_64/

docker compose:https://github.com/docker/compose/releases

把下载好的.exe文件放入文件夹配置好对应的指定地址

如果本来本地就安装了docker则不用处理

三、编写docker-compose.yml文件

  • 执行在项目跟目录创建一个docker compose文件

  • 编写docker-compose.yml文件

    yml 复制代码
    version: '3.8'  # Docker Compose 文件版本
    
    services:
      service-gateway:
        image: 10.37.129.2:5000/ssyx/service-gateway:1.0.1  # 替换为你的 Harbor 地址和镜像标签
        container_name: service-gateway  #容器名称
        ports:
          - "8000:8000"  # 映射端口,根据实际情况修改(服务器端口:容器端口)
        environment: # 如果你的服务需要环境变量,在这里配置
          - SPRING_PROFILES_ACTIVE:dev  #指定dev
        volumes: # 如果有挂载目录,在这里定义,配置日志的挂载目录即可
          - /home/docker/docker-logs/ssyx/service-gateway:/app/logs/service-gateway
        restart: always # 推荐设置,服务意外停止后自动重启
        # depends_on:  # 如果有依赖的服务,比如数据库,在这里定义
        #   - erp
    
      service-sys:
        image: 10.37.129.2:5000/ssyx/service-sys:1.0.1
        container_name: service-sys  #容器名称
        ports:
          - "8001:8001"
        environment:
          - SPRING_PROFILES_ACTIVE:dev
        volumes:
          - /home/docker/docker-logs/ssyx/service-gateway:/app/logs/service-gateway
        restart: always
  • 配置启动服务


    ⚠️注意 :需要配置一下down删除容器时把本地镜像也删除掉,因为我们每次更新代码都需要到远程仓库去拉取最新的镜像,如果本地不删除的话,就不会每次去远程仓库拉取。

四、执行启动

创建好之后可以点击右上角的执行,也可以直接点击docker-compose.yml的启动标识启动创建单个服务或者多个容器

启动好之后则可以通过日志查看和管理docker容器

相关推荐
fīɡЙtīиɡ ℡4 分钟前
内存泄漏产生的原因
java·spring·servlet
码智社1 小时前
Java实现RSA密钥生成、加密解密、加签验签
java
wear工程师2 小时前
ThreadLocal 在线程池里为什么会串数据:别只会答内存泄漏
java·后端
Iruoyaoxh2 小时前
栈和队列~
java·开发语言
审小匠OpenCPAi2 小时前
银行流水核查怎么自动化?单边匹配、双向勾稽与图聚类异常检测的工程对比
java·前端·人工智能·python·审计
码上上班2 小时前
docker课程
java·docker·容器
腻害兔2 小时前
【若依项目-产品经理视角】RuoYi-Vue-Pro 源码拆解:CRM 客户关系模块深度解析——从线索到回款,一套完整的 B2B 销售闭环是怎么搭的?
java·前端·javascript·vue.js·产品经理·ai编程
达子6662 小时前
第9章_HarmonyOs图解 用Java开发UI
java·ui·harmonyos
龙虾PRO4 小时前
能源与股票量化核心差异,AI全链路落地实操手册
java·面试·职场和发展
llwszx4 小时前
【Java/Go后端手撸原生Agent(第九篇):Plan-and-Execute规划模式——从“走一步看一步“到“先谋后动“】
java·python·golang·agent开发·plan模式·规划执行模式