Docker-Compose概述

2023-11-29 08:07:02 浏览数 (1)

​基本介绍

Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。

docker-compose将所管理的容器分为三层, 分别是工程(project),服务(service)以及容器(containner)

  • DockerCompose运行目录下的所有文件(docker-compose.yml文件、extends文件或环境变量等)组成一个工程,如无特殊指定,工程名即为当前目录名。
  • 一个工程当中,可以包含多个服务,每个服务中定义了容器运行的镜像、参数、依赖。
  • 一个服务中可以包括多个容器实例,docker-compose并没有解决负载均衡的问题。因此需要借助其他工具实现服务发现及负载均衡,比如consul。

Compose 中有两个重要的概念:

  • 服务 (service):一个应用的容器,实际上可以包括若干运行相同镜像的容器实例。
  • 项目 (project):由一组关联的应用容器组成的一个完整业务单元,在 docker-compose.yml 文件中定义

DockerCompose的工程配置文件默认为docker-compose.yml。可以通过环境变量COMPOSE_FILE -f 参数自定义配置文件,其自定义多个有依赖关系的服务及每个人服务运行的容器。

DockerCompose的使用步骤

  • 创建对应的DockerFile文件
  • 创建yml文件,在yml文件中编排我们的服务
  • 通过docker-compose up命令 一键运行我们的容器

Docker-Compose下载

curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

要安装其他版本的 Compose,替换 v2.17.2。 Docker Compose和Docker版本对应关系:https://docs.docker.com/compose/compose-file/compose-file-v3/

  • Docker Compose下载地址:https://github.com/docker/compose/releases
  • 赋予执行权限:sudo chmod x /usr/local/bin/docker-compose
  • 建立软连接:sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
  • 查看docker版本:docker-compose --version

Docker-Compose常用命令

命令

作用

docker-compose -h

查看帮助

docker-compose up

动所有docker-compose服务

docker-compose up -d

启动所有docker-compose服务并后台运行

docker-compose down

停止并删除容器、网络、卷、镜像

docker-compose exec yml里面的服务id

进入容器实例内部 docker-compose exec docker-compose.yml文件中写的服务id /bin/bash

docker-compose ps

展示当前docker-compose编排过的运行的所有容器

docker-compose top

展示当前docker-compose编排过的容器进程

docker-compose logs yml里面的服务id

查看容器输出日志

docker-compose config

检查配置

docker-compose config -q

检查配置,有问题才有输出

docker-compose restart

重启服务

docker-compose start

启动服务

docker-compose stop

停止服务

​我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!

我正在参与2023腾讯技术创作特训营第三期有奖征文,组队打卡瓜分大奖!

0 人点赞