本文介绍docker-compose相关的常用命令,以下命令都是以docker-comose开头的。
up
该命令十分强大,它将尝试自动完成包括构建镜像,(重新)创建服务,启动服务,并关联服务相关容器的一系列操作。链接的服务都将会被自动启动,除非已经处于运行状态。
选项:
- -d 在后台运行服务容器
- –no-color 不使用颜色来区分不同的服务的控制台输出
- –no-deps 不启动服务所链接的容器
- –force-recreate 强制重新创建容器,不能与–no-recreate同时使用
- –no-recreate 如果容器已经存在了,则不重新创建,不能与 --force-recreate 同时使用
- –no-build不自动构建缺失的服务镜像
- -t,–timeout TIMEOUT 停止容器时候的超时(默认为10秒)
build
格式为:docker-compose build [选项] [服务 …]
构建(重新构建项目中的服务容器)。
可以随时在项目目录下运行docker-compose build来中心构建服务。
选项包括:
- –force-rm删除构建过程中的临时容器。
- –no-cache构建镜像过程中不使用cache(这将加长构建过程)
- –pull始终尝试通过pull来获取更新版本的镜像
version
格式为docker-compose version
打印版本信息
config
验证Compose文件格式是否正确,若正确显示配置,若格式错误显示错误原因
exec
进入指定的容器
images
列出Compose文件中包含的镜像
ps
格式为docker-compose ps [选项] [服务 …]
列出项目中目前的所有容器
选项:
- -q只打印容器的ID信息
logs
格式为docker-compose logs [选项] [服务 …]
查看服务容器的输出。默认情况下,docker-compose将对不同的服务输出使用不同的颜色来区分。可以通过–no-color来关闭颜色。
restart
格式为docker-compose restart [选项] [服务 …]
重启项目中的服务。
选项:
- -t,–timeout TIMEOUT指定重启前停止容器的超时(默认为10秒)
rm
格式为docker-compose rm [选项] [服务 …]
删除所有(停止状态的)服务容器。推荐先执行docker-compose stop命令来停止容器。
选项:
- -f,–force强制直接删除,包括非停止状态的容器。一般尽量不要使用该选项
- -v 删除容器所挂载的数据卷
run
格式为docker-compose run [选项] [-p 端口…] [-e KEY=VAL…] 服务 [命令] [参数 …]
在指定服务上执行一个命令。例如:
docker-compose run ubuntu ping docker.com
scale
格式为docker-compose scale [选项] [服务名=数字 …]
设置指定服务运行的容器个数。例如:
docker-compose scale web=3 db=2
start
格式为docker-compose start [服务…]
启动已经存在的服务容器
stop
停止已经存在的服务容器
down
停止up命令所启动的容器,并移除网络
help
格式为docker-compose help 命令
获得一个命令的帮助
create
格式为docker-compose create [服务 …]
创建服务
kill
通过发送SIGKILL信号来强制停止服务容器
pause
格式为docker-compse pause [服务 …]
暂停一个服务容器
unpause
格式为docker-compose unpause [服务 …]
恢复处于暂停状态中的服务
port
格式为docker-compose port [选项] 服务 私有端口
打印某个容器端口所映射的公共端口
选项:
- –protocol=proto指定端口协议,tcp(默认值)或者udp
- –index=index如果同一服务存在多个容器,指定命令对象容器的序号(默认为1)
push
推送服务依赖的镜像到Docker镜像仓库
pull
格式为docker-compose pull [选项] [服务 …]
拉取服务依赖的镜像
选项:
- –ignore-pull-failures忽略拉取镜像过程中的错误。
top
查看各个服务容器内运行的进程