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

前言

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

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

一、部署准备

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

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

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

--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文件

    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容器
在这里插入图片描述

### Ubuntu 上 Docker Compose一键部署方法 在 Ubuntu 系统上实现 Docker Compose一键部署,通常涉及以下几个核心操作:安装 DockerDocker Compose、编写 `docker-compose.yml` 文件以及运行容器。以下是详细的说明: #### 安装 DockerDocker Compose 为了确保环境配置正确,在 Ubuntu 上可以使用以下命令来安装 DockerDocker Compose。 通过 `curl` 命令下载并安装最新版本的 Docker Compose 工具: ```bash sudo curl -L https://github.com/docker/compose/releases/download/1.25.3/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose ``` 此命令会自动检测当前系统的架构并将对应的二进制文件下载到 `/usr/local/bin/docker-compose` 路径下[^1]。 接着赋予该工具可执行权限: ```bash sudo chmod +x /usr/local/bin/docker-compose ``` 验证安装是否成功可以通过以下命令完成: ```bash docker-compose --version ``` #### 编写 `docker-compose.yml` 配置文件 创建一个名为 `docker-compose.yml` 的文件,并定义所需的容器和服务。例如,假设要启动一个 PHP 应用程序,则可以在 `docker-compose.yml` 中加入如下内容: ```yaml version: '3' services: app: image: php:7.4-fpm volumes: - ./code:/var/www/html ports: - "9000:9000" db: image: mysql:5.7 environment: MYSQL_ROOT_PASSWORD: example ``` 上述 YAML 文件描述了一个简单的服务组合,其中包含两个部分——一个是基于官方 PHP 映像的应用服务器 (`app`);另一个则是 MySQL 数据库实例 (`db`)。 #### 启动应用与初始化设置 当所有的准备工作完成后,就可以利用下面这条指令一次性构建镜像并启动所有关联的服务: ```bash docker-compose up -d ``` 这一步骤将会以后台模式运行指定的服务列表。 对于 Laravel 类型项目而言,还需要额外生成密钥以便正常工作。此时可以借助于 `exec` 子命令进入正在运行中的容器内部执行相关脚本: ```bash docker-compose exec app php artisan key:generate ``` 这段代码片段展示了如何调用 Artisan CLI 来为应用程序分配随机加密字符串[^2]。 #### 参考资料扩展阅读 如果希望了解更多有关 Docker 架构设计方面的背景知识或者其他高级特性的话,推荐查阅官方文档或者在线资源[^3][^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值