DOcker-Compose 简单使用

今天来记录下docker-compose的简单使用。**Compose **是一个用于定义和运行多容器 Docker 应用程序的工具。使用 Compose,您可以使用 YAML 文件来配置应用程序的服务。然后,使用一个命令,您可以从您的配置中创建并启动所有服务

接下来如何安装docker-compose:具体步骤如下:

点击查看代码
# 方法一:
curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

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

# 方法二:使用pip安装,版本可能比较旧
$ yum install python-pip python-dev
$ pip install docker-compose

# 方法三:作为容器安装
$ curl -L https://github.com/docker/compose/releases/download/1.25.5/run.sh > /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

# 方法四:离线安装
# 下载[docker-compose-Linux-x86_64](https://github.com/docker/compose/releases/download/1.8.1/docker-compose-Linux-x86_64),然后重新命名添加可执行权限即可:
$ mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose;
$ chmod +x /usr/local/bin/docker-compose
# 百度云地址: http://pan.baidu.com/s/1slEOIC1 密码: qmca
# docker官方离线地址:https://dl.bintray.com/docker-compose/master/

docker-compose.yml配置详解:

官网docker-compose对应的docker版本详解

YML语法在线检查地址

YML语法在线检查地址2

顶级配置

  • version 定义了版本信息
  • services 定义了服务的配置信息
  • networks 定义了网络信息,提供给 services 中的 具体容器使用
  • volumes 定义了卷信息,提供给 services 中的 具体容器使用

示例:

点击查看代码
version: '3.9'


services:
  redis:
    image: redis:latest
    container_name: redis
    restart: always
    ports:
      - 6379:6379
    networks:
      - frontend
    volumes:
      -  /var/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - /var/redis/data:/data
    command:
      /bin/bash -c "redis-server /usr/local/etc/redis/redis.conf "
  mysql:
    image: mysql:latest  
    restart: always
    container_name: mysql
    privileged: true
    ports:
      - 3306:3306
    networks:
      - backend
    environment:
      MYSQL_ROOT_PASSWORD: 123456
      TZ: Asia/Shanghai
    volumes:
      - /var/mysql/data/:/var/lib/mysql/
networks:
  frontend:
  backend:

具体的YAML节点的详解:https://m.runoob.com/docker/docker-compose.html

Docker-Compose常用命令

  1. docker-compose up
    用于部署一个 Compose 应用。

默认情况下该命令会读取名为 docker-compose.yml 或 docker-compose.yaml 的文件。

当然用户也可以使用 -f 指定其他文件名。通常情况下,会使用 -d 参数令应用在后台启动。

  1. docker-compose stop
    停止 Compose 应用相关的所有容器,但不会删除它们。

被停止的应用可以很容易地通过 docker-compose restart 命令重新启动。

  1. docker-compose rm
    用于删除已停止的 Compose 应用。

它会删除容器和网络,但是不会删除卷和镜像。

  1. docker-compose restart
    重启已停止的 Compose 应用。

如果用户在停止该应用后对其进行了变更,那么变更的内容不会反映在重启后的应用中,这时需要重新部署应用使变更生效。

  1. docker-compose ps
    用于列出 Compose 应用中的各个容器。

输出内容包括当前状态、容器运行的命令以及网络端口。

  1. docker-compose down
    停止并删除运行中的 Compose 应用。

它会删除容器和网络,但是不会删除卷和镜像。

以上是我个人的总结,希望对你有所帮助,大家共同进步。

posted @ 2022-05-30 21:19  Raymon*码记  阅读(577)  评论(0)    收藏  举报