以下代码保存为:docker-compose.yml
version: '2' services: # 容器名 a1: # 基础镜像 image: apache_del restart: always # 设置多个端口映射 ports: - "8080:80" - "9090:80" # 目录映射 volumes: - /home/dockermount:/mnt tty: true # 主机名 hostname: a1 # 域 domainname: a.com # 容器间互联,可以不用 links: - a2 # 容器启动时执行的命令 command: /usr/sbin/init a2: image: apache_del restart: always ports: - "8081:80" volumes: - /home/dockermount:/mnt tty: true hostname: a2 domainname: a.com links: - a3 command: /usr/sbin/init a3: image: apache_del restart: always ports: - "8082:80" volumes: - /home/dockermount:/mnt tty: true hostname: a3 domainname: a.com command: /usr/sbin/init
# 可以通过hostname设置主机名,通过domainname设置域,结果主机名就是hostname.domainname,如 a1.a.com
docker-compose up -d 根据配置文件启动并后台运行
docker-compose down 停止并删除配置文件中的容器,不会删除其它容器
docker-compose ps
知识点:
1、
如果 docker-compose.yml 文件保存在 /root/file/compose 目录,生成的容器名为 上一层目录名字+容器名+数字序号,如: compose_a1_1
2、
如果用compose生成容器,容器间可以互相ping通,不需要加links参数。不像手动docker run 加link参数后,/etc/hosts会添加主机名和ip映射。
3、需要注意配置文件,空格的缩进。
原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/3907.html