Docker Compose 常用命令详解【二】
- 1. Docker Compose命令格式
- 2. docker-compose up
- 3. docker-compose ps
- 4. docker-compose stop
- 5. docker-compose start
- 6. docker-compose restart
- 7. docker-compose down
- 8. docker-compose logs
- 9. docker-compose build
- 10. docker-compose rm
- 11. docker-compose run
- 12. docker-compose scale
- 13. docker-compose pause
- 14. docker-compose uppause
- 15. docker-compose config
- 16. docker-compose exec
- 17. docker-compose port
- 18. docker-compose pull
- 19. docker-compose push
1. Docker Compose命令格式
格式:
docker-compose [-f <arg>...][options][COMMAND][ARGS...]
命令选项如下:
-f --file: 指定Compose模板文件,默认为docker-compose.yml。
-p --project-name: NAME指定项目名称,默认将使用当前目录名作为项目名。
--verbose: 输出更多调试信息。
-v --version: 打印版本并退出。
--log-level LEVEL: 定义日志等级(DEBUG,INFO,WARNING,ERROR,CRITICAL)。
2. docker-compose up
启动服务容器。
格式:
docker-compose up [options][--svale SERVICE=NUM...][SERVICE...]
options包括:
-d: 在后台运行服务容器。
--no-color: 不使用颜色来区分不同的服务的控制输出。
--no-deps: 不启动服务所链接的容器。
--force-recreate: 强制重新创建容器,不能与-no-recreate同时使用。
--no-recreate: 如果容器已存在,则不重新创建。
--no-build: 不自动构建缺失的服务镜像。
--build:在启动容器前构建服务镜像。
--abort-on-container-exit: 停止所有容器,如果任何一个容器被停止,不能与-d同时使用。
-t,--timeout TIMEOUT: 停止容器的超时(默认为10秒)。
--remove-orphans: 删除服务中没有在compose文件中定义的容器。
--scale SERVICE=NUM: 设置服务运行容器的个数,将覆盖在compose中通过scale指定的参数。
3. docker-compose ps
列出项目中所有的容器。
格式:
docker-compose ps [options][SERVICE...]
4. docker-compose stop
停止正在运行的容器。
格式:
docker-compose stop[options][SERVICE...]
options包含:
-t,--timeout TIMEOUT: 停止容器时的超时实践(默认10秒)。
5. docker-compose start
启动已停止的容器。
格式:
docker-compose start[SERVICE...]
6. docker-compose restart
重启项目中的服务。
格式:
docker-compose restart[options][SERVICE...]
options包括:
-t,--timeout TIMEOUT:指定重启前停止容器的超时(默认为10秒)。
7. docker-compose down
停止和删除容器、网络、卷、镜像。
格式:
docker-compose down[options]
options包括:
--rmi type: 删除镜像,类型为:all,删除compose文件中定义的所有镜像;local:删除镜像名为空的镜像。
-v,--volumes: 删除已经在compose文件中定义的和匿名的附在容器上的数据卷。
--remove-orphans: 删除服务中没有在compose中定义的容器。
8. docker-compose logs
查看容器的日志。默认情况下,docker-compose将对不同的服务输出使用不同的颜色来区分。可以通过–no-color来关闭颜色。
格式:
docker-compose logs[options][SERVICE...]
options包括:
-f:跟踪日志输出。
9. docker-compose build
构建(重新构建)项目中的服务容器。
格式:
docker-compose build[options][--build-arg key=val...][SERVICE...]
options包括:
--compress: 通过gzip压缩构建上下环境。
--force-rm: 删除构建过程中的临时容器。
--no-cache: 构建镜像过程中不使用缓存。
--pull: 始终尝试通过拉取操作来获取更新版本的镜像。
-m, --memory MEM: 为构建的容器设置内存大小。
--build-arg key=val: 为服务设置build-time变量。
10. docker-compose rm
删除所有(停止状态的)服务容器。
格式:
docker-compose rm[options][SERVICE...]
options包括:
-f, --force: 强制删除,包括非停止状态的容器。
-v: 删除容器所挂载的数据卷。
11. docker-compose run
在指定服务上执行一个命令。
格式:
docker-compose run[options][-v VOLUME...][-p PORT...][-e KEY=VAL...] SERVICE [COMMAND][ARGS...]
示例:
docker-compose run ubuntu ping www.baidu.com #在指定容器上执行一个ping命令。
12. docker-compose scale
设置指定服务运行的容器个数。
格式:
docker-compose scale [options] [SERVICE=NUM...]
示例:
docker-compose scale web=3 db=2
设置启动三个web容器,俩个db容器。
13. docker-compose pause
暂停一个服务容器。
格式:
docker-compose pause [SERVICE...]
14. docker-compose uppause
恢复处于暂停状态中的服务。
格式:
docker-compose uppause [SERVICE...]
15. docker-compose config
验证并查看compose文件配置。
格式:
docker-compose config[options]
options包括:
--resolve-image-digests: 将镜像标签标记为摘要
-q, --quiet: 只验证配置,不输出。 当配置正确时,不输出任何内容,当文件配置错误,输出错误信息
--services 打印服务名,一行一个
--volumes 打印数据卷名,一行一个
16. docker-compose exec
进入容器中。
格式:
docker-compose exec [options] SERVICE COMMAND [ARGS...]
options包括:
-d: 分离模式,后台运行命令。
--privileged: 获取特权。
--user USER: 指定运行的用户。
--T: 禁用分配TTY,默认docker-compose exec分配TTY。
--index=index,当一个服务拥有多个容器时,可通过该参数登陆到该服务下的任何服务,例如:docker-compose exec –index=1 web /bin/bash ,web服务中包含多个容器。
示例:
docker-compose exec web bash #进入web容器中
17. docker-compose port
显示某个容器端口所映射的公共端口。
格式:
docker-compose port [options] SERVICE PRIVATE_PORT
options包括:
--protocol=proto: 指定端口协议,TCP(默认值)或者UDP。
--index=index: 如果同意服务存在多个容器,指定命令对象容器的序号(默认为1)。
18. docker-compose pull
拉取服务依赖的镜像。
格式:
docker-compose pull[options][SERVICE...]
options包括:
--ignore-pull-failures: 忽略拉取镜像过程中的错误。
--parallel: 多个镜像同时拉取。
--quiet: 拉取镜像过程中不打印进度信息。
19. docker-compose push
推送服务依赖的镜像。
格式:
docker-compose push[options][SERVICE...]
options包括:
--ignore-pull-failures: 忽略推送镜像过程中的错误。