Docker Compose文件中配置说明及示例

Docker Compose是用于定义和运行多个Docker容器应用程序的工具,其配置文件(docker-compose.yml)采用YAML格式。

以下是docker-compose.yml文件中的配置说明:

  1. version:指定Compose文件版本。
  2. services:定义需要启动的服务及它们所需的镜像、端口映射、环境变量、挂载到主机上的目录等相关信息。
  3. volumes:定义数据卷,即将容器内部的数据持久化到宿主机的目录中。
  4. networks:定义网络,使得多个服务可以在同一网络下相互通信。
  5. environment:指定环境变量,传递给服务容器使用。
  6. ports:定义端口映射,将容器内部的端口映射到宿主机端口。
  7. depends_on:定义服务启动的依赖关系,保证依赖的服务先启动。
  8. build:定义镜像构建的相关信息,包括构建上下文路径、Dockerfile路径以及构建参数等。

Docker Compose文件示例及其配置说明示例:

version: "3.9"
services:
  db:
    image: mysql:5.7
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: mydb
    volumes:
      - "./data:/var/lib/mysql"
  web:
    build: .
    ports:
      - "8000:80"
    depends_on:
      - db

volumes:
  data:

networks:
  app_net:

说明:

  • version: "3.9":指定Compose文件版本。
  • services::定义需要启动的服务及其相关配置。
  • db::服务名为db,使用MySQL 5.7镜像,容器重启后自动启动,设置MYSQL_ROOT_PASSWORD和MYSQL_DATABASE环境变量,将./data目录挂载到容器内部/var/lib/mysql目录中。
  • web::服务名为web,通过当前目录下的Dockerfile进行构建,将容器内部80端口映射到宿主机8000端口,依赖于db服务。
  • volumes::定义数据卷名称为data。
  • networks::定义网络名称为app_net。

此示例中,Docker Compose将会启动两个服务(db和web),一个使用MySQL镜像作为另一个使用Dockerfile构建的镜像作为Web应用程序,在同一个网络下相互通信,并将数据库数据存储到./data目录。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值