前言
Docker Compose介绍
Docker Compose是一个用来定义和运行复杂应用的Docker工具,负责实现对 Docker 容器集群的快速编排。
Docker Compose安装
下载docker-compose文件,1.16.1处可以更换版本,Docker Compose
sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
若是github下载太慢,可以更换国内下载
sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
添加文件可执行权限
sudo chmod +x /usr/local/bin/docker-compose
测试
# 查看Docker Compose版本信息docker-compose --version
Docker Compose常用命令
Usage: # 用法docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]docker-compose -h|--helpOptions: # 选项-f, --file FILE # 指定备用撰写文件# (默认: docker-compose.yml)-p, --project-name NAME # 指定备用项目名称# (default: directory name)--verbose # 显示更多输出--log-level LEVEL # 设置日志级别 (DEBUG, INFO, WARNING, ERROR, CRITICAL)--no-ansi # 不打印ANSI控制字符-v, --version # 打印版本并退出-H, --host HOST # 要连接到的守护程序套接字--tls # 使用TLS; implied by --tlsverify--tlscacert CA_PATH # 仅由此CA签名的信任证书--tlscert CLIENT_CERT_PATH # TLS证书文件的路径--tlskey TLS_KEY_PATH # TLS密钥文件的路径--tlsverify # 使用TLS并验证远程--skip-hostname-check # 不要根据客户端证书中指定的名称检查守护程序的主机名--project-directory PATH # 指定备用工作目录# (默认值:撰写文件的路径)--compatibility # 如果设置,Compose将尝试将v3文件中的密钥转换为其非Swarm等效密钥Commands: # 命令build # 生成或重建服务bundle # 从Compose文件生成Docker捆绑包config # 验证并查看撰写文件create # 创建服务down # 停止并删除容器、网络、图像和卷events # 从容器接收实时事件exec # 在运行的容器中执行命令help # 获取有关命令的帮助images # 镜像列表kill # 杀死容器logs # 查看容器的输出日志pause # 暂停服务port # 打印端口绑定的公共端口ps # 容器列表pull # 拉取服务镜像push # 推送服务镜像restart # 重启服务rm # 删除停止的容器run # 运行一次性命令scale # 设置服务的容器数start # 启动服务stop # 停止服务top # 显示正在运行的进程unpause # 取消暂停服务up # 创建和启动容器version # 显示Docker Compose版本信息
Docker Compose基本使用
# 指定 docker-compose 脚本后台启动docker-compose -f docker-compose-env.yml up -d# 指定 docker-compose 脚本停止并且删除相关容器、网络、卷docker-compose -f docker-compose-env.yml down# 指定 docker-compose 脚本查看容器列表docker-compose -f docker-compose-env.yml ps# 指定 docker-compose 脚本查看指定容器日志docker-compose -f docker-compose-env.yml logs --tail 10 -f 容器名# 指定 docker-compose 脚本停止指定容器docker-compose -f docker-compose-env.yml stop 容器名
