Docker之compose

Compose模板配置 YAML格式

docker-compose.yml

# 指定版本,固定即可 
version: '3'
services:
    nginx:
        image: nginx:latest
        # 端口映射
        ports:
            - "80:80"
        # 依赖关系 先跑php
        depends_on:
            - "php"
        # 数据卷
        volumes:
            # 映射主机config目录到容器/etc/nginx/conf.d目录
            - "$PWD/services/nginx/config:/etc/nginx/conf.d"
            - "$PWD/app:/usr/share/nginx/html"
        networks:
            - app_net
        # 容器名称
        container_name: "compose-nginx"
    php:
        build: ./services/php
        # image指定build Dockerfile生成镜像的名称
        image: php:7.2-fpm-pdo
        ports:
            - "9000:9000"
        volumes:
            - "$PWD/app:/var/www/html"
        networks:
            - app_net
        container_name: "compose-php"
    mysql:
        image: mysql:5.7
        ports:
            - "3306:3306"
        volumes:
            - "$PWD/services/mysql/data:/var/lib/mysql"            
        # 环境变量
        environment:
            MYSQL_ROOT_PASSWORD: "123456"
        # 允许运行特权命令    
        privileged: true
        networks:
            app_net:
                # 固定子网ip,网段必须在子网络10.10.*.*
                ipv4_address: 10.10.10.1
        container_name: "compose-mysql"
networks:
    # 配置docker network
    app_net:
        driver: bridge
        ipam:
            config:
                # 子网络
                - subnet: 10.10.0.0/16

命令列表

运行 compose 项目

docker-compose up

构建服务

docker-compose build

停止项目并移除网络

docker-compose down

验证Compose文件格式

docker-compose config 

若配置正确,则显示配置;若配置错误,则显示错误原因。

列出包含的镜像

docker-compose images

进入指定的容器

docker-compose exec
  • docker-compose配置PHP开发环境

你可能感兴趣的:(Docker之compose)