Docker 进步之路
  • Introduction
  • Docker 简介
  • Docker 安装与启动
  • Docker 的运行机制
  • Docker 的底层技术
  • Portainer详解(Web端管理平台)
    • 资料
  • Docker 的使用
    • Docker 客户端指令
      • Docker 操作指令
      • Docker 管理指令
      • 常用命令
    • Dockerfile
      • 基本结构与常用指令
    • 应用部署=初级
    • Docker 数据卷(volume)
    • 迁移与备份
    • Docker私有仓库
  • Mysql 集群
    • 常见 MySQL 集群方案
    • PXC集群
      • 1、PXC 集群安装
      • 2、PXC 集群负载均衡
      • 3、负载均衡的高可用方案
      • 4、热备份数据
  • Redis 集群
    • Redis 集群介绍
    • Redis 集群搭建
  • web服务器集群
    • 负载均衡
    • 负载均衡的高可用方案
  • Docker 三剑客
    • Docker Machine
    • Docker Compose
    • Swarm 集群
    • 附录:网络 network
  • Docker 集群(K8S)
  • 资料
  • 注意
  • Mongodb 集群
    • 资料
  • 常用操作笔记
  • 配置远程访问
Powered by GitBook
On this page
  • 安装
  • Docker cmpose 文件编写
  • 操作
  • 资料

Was this helpful?

  1. Docker 三剑客

Docker Compose

PreviousDocker MachineNextSwarm 集群

Last updated 5 years ago

Was this helpful?

Docker compose 是 Docker容器编排的工具, 可以配置并启动多个容器,适合复杂业务场景。

安装

sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

然后赋予可执行权限

sudo chmod +x /usr/local/bin/docker-compose

查看下版本docker-compose --version

Docker cmpose 文件编写

文件名:docker-compose.yml

工具:yaml检查的在线工具

目前可以使用版本语法语法

操作

启动所有

docker-compose up -d

-d 后台运行,使用docker-compose up --help查看更多

停止所有容器

docker-compose stop

也可以单独停止一个容器docker stop 容器名

删除多个容器

docker rm 容器1,容器2

自我提示示例:

services: 
  web1: 
    container_name: web1
    image: "centos:jdk"
    healthcheck:
      test: ["CMD", "curl","-s","-f", "http://localhost:80"]
      interval: 5s
      timeout: 5s
      retries: 3
    ports: 
      - "8080:80"
    privileged: true
    volumes: 
      - "/home/shenyi/nginx/web1/:/var/www/html/"
    networks:
      mynginx-net:
        ipv4_address: ${web1_addr}

  web2: 
    container_name: web2
    image: "centos:jdk"
    ports: 
      - "8081:80"
    privileged: true
    volumes: 
      - "/home/shenyi/nginx/web2/:/var/www/html/"
    networks:
      mynginx-net:
        ipv4_address: 192.156.0.3
    healthcheck:
      test: ["CMD", "curl","-s","-f", "http://localhost:80"]
      interval: 5s
      timeout: 5s
      retries: 3


  nginx:
    container_name: mynginx
    image: "centos:nginx"
    healthcheck:
      test: ["CMD", "curl","-s","-f", "http://localhost:80"]
      interval: 5s
      timeout: 5s
      retries: 3
    ports:
      - "9090:80"
    privileged: true
    volumes:
      - "/home/shenyi/nginx/conf/nginx.conf:/etc/nginx/nginx.conf"
    networks:
      mynginx-net:
        ipv4_address: 192.156.0.2
networks:
  mynginx-net:
    driver: bridge
    ipam: 
     config: 
      - subnet: 192.156.0.0/16
version: "3"

资料

官方文档:Docker-compose介绍
官方文档:Docker-compose文件语法
官方文档:Docker-compose命令
官方安装文档
http://www.yamllint.com/
compose file version 3
官方文档:Docker-compose命令
Docker-Compose重启策略