Banner image of the blog
站长头像

花朝月夕

一个小小的个人网站

文章 评论 标签
6 1 0
标签云
暂无标签
0 0 分钟

Docker-compose常用参数解释

2025-12-29 教程 编辑

docker-compose最大的优势还是多容器统一管理,以及构成一种脚本化一键部署容器的方式。
个人建议environment填写变量,另起一个.env文件填写参数。

掌握以下这些参数基本足够日常使用,之后会分享一些优质项目的compose文件。

# 项目名称
# 取值优先级:命令参数 > name值 > compose文件所在文件夹名称
name:XXX

# compose版本号
# 早期V2版本前,该字段用于声明compose文件的语法版本,2020年后新版本废弃
# version:"3"

services:
  # 服务名称
  XXX:
    # 指定依赖服务
    # depends_on:
      # XXX2启动后才会启动XXX,注意,XXX不会等待XXX2完全启动
      # - XXX2
    # 容器名称
    # 不填写会自动生成,建议填写为“项目_服务_编号”这种形式,方便多容器管理
    container_name:XXX
    # 镜像地址
    # 不填写会自动拉取最新版,建议填写具体版本号,防止镜像更新导致不兼容
    image:XXX:1.2-alpine
    # 网络模式
    # host:使用宿主机网络,此时ports配置无效;bridge:桥接网络
    network_mode:host,bridge,none
    # 重启策略
    # always:始终尝试重启;unless-stopped:仅手动停止不重启
    restart:always,unless-stopped,no
    # 最大cpu线程占用
    # 一般容器填写1完全够用
    cpus:1
    # 最大内存占用
    # 根据宿主机内存合理分配,防止容器异常占用资源导致宿主机宕机
    mem_limit:512M
    # 日志限制
    logging:
      options:
        # 日志文件大小限制
        max-size:"16m"
        # 日志文件数量限制
        max-file:"3"
    # 环境变量
    environment:
      # 根据项目部署文档获取变量名称
      # 下面为时区设置,北京时间
      TZ:Asia/Shanghai
      TIME_ZONE:Asia/Shanghai
    # 端口映射
    ports:
      # 宿主机端口:容器内部端口
      # 报错出现bind字样一般为宿主机端口被占用
      -12345:12345
    # 端口开放,便于同一网络的其他容器访问
    expose:
       - "11111"
       - "54321"
    # 文件映射
    volumes:
      # 宿主机文件路径:容器内部文件路径
      # 将容器内部数据持久化,防止重启、重建后数据丢失
      # ./表示当前目录,即docker-compose文件所在目录
      -./data:/var/lib/XXX/data
本站未注明转载的文章均为原创,并采用 CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!