赞
踩
目录
docker-compose是一个用于定义和运行多容器Docker应用程序的工具。使用Compose,可以使用YAML文件来配置应用程序的服务。然后,使用单个命令,可以从配置中创建并启动所有服务。
docker-compose.yml
中定义构成应用程序的服务.docker-compose up
启动并运行整个应用程序。- sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
-
- sudo chmod +x /usr/local/bin/docker-compose
- sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
- #或者:
- vim /etc/profile
- export COMPOSE=/usr/local/bin/
- export PATH=$COMPOSE:$PATH
-
- #执行: source /etc/profile 生效.
从版本1.3开始,Compose使用Docker标签来跟踪容器,并且需要重新创建容器以添加标签。 如果Compose检测到没有标签创建的容器,它将拒绝运行.
- sudo rm /usr/local/bin/docker-compose
- #或者:
- pip uninstall docker-compose
- Usage: build [options] [--build-arg key=val...] [SERVICE...]
- 选项:
- --compress 使用gzip压缩构建上下文
- --force-rm 始终移除中间容器
- --no-cache 构建镜像时不要使用缓存
- --pull 拉取最新版本的镜像
- -m, --memory MEM 设置构建容器的内存限制
- --build-arg key=val 设置服务的构建时候的变量
- --parallel 并行构建镜像
注意: 如果更改服务的Dockerfile,请运行docker-compose build
进行重建。
- Usage: bundle [options]
- 选项:
- --push-images 自动推送构建以后的服务的镜像
- -o, --output PATH 将包文件写入的路径
- Usage: config [options]
- 选项:
- --resolve-image-digests 镜像摘要的标记
- --no-interpolate 不要插入环境变量
- -q, --quiet 仅验证配置,不打印任何内容
- --services 打印服务名称,每行一个
- --volumes 打印存储卷名称,每行一个
-
- --hash="*" 打印服务配置哈希,每行一个。设置“service1,service2”以获取指定服务的列表或使用通配符来显示所有服务。
- 为服务创建容器
- Usage: create [options] [SERVICE...]
- 选项:
- --force-recreate 即使没有更改配置,也要重新创建容器
- --no-recreate 如果容器已存在,请不要重新创建。
- --no-build 即使容器丢失,也不要构建镜像.
- --build 在创建容器之前构建镜像
- Usage: down [options]
- 选项:
- --rmi type 删除镜像。类型:
- 'all':删除任何服务使用的所有图像。
- 'local':仅删除没有的图像
- 自定义标签由image字段设置。
-
- -v, --volumes 删除volumes中声明的存储卷
- --remove-orphans 删除没有在文件中定义的服务的容器
- -t, --timeout TIMEOUT 以秒为单位指定关闭超时(默认10s)
默认删除的内容:在Compose文件中定义的服务的容器和定义的服务的网络.
注意:永远不会删除定义为外部的网络和卷.:
- Usage: events [options] [SERVICE...]
- 选项:
- --json 将事件输出为json对象流
- Usage: exec [options] [-e KEY=VAL...] SERVICE COMMAND [ARGS...]
- 选项:
- -d, --detach 在后台运行命令
- --privileged 为进程提供扩展权限
- -u, --user USER 以该用户身份运行该命令
- -T 禁用伪tty分配。默认情况下`docker-compose exec`分配TTY
-
- --index=index 容器的索引.
- -e, --env KEY=VAL 设置环境变量
- -w, --workdir DIR 此命令的workdir目录的路径
- Usage: images [options] [SERVICE...]
- 选项:
- -q, --quiet 仅显示ID
- Usage: kill [options] [SERVICE...]
- 选项:
- -s SIGNAL SIGNAL信号发送到容器,默认信号是SIGKILL
-
- 通过发送SIGKILL信号强制运行容器停止:
- docker-compose kill -s SIGINT
- Usage: logs [options] [SERVICE...]
- 选项:
- --no-color 产生单色输出
- -f, --follow 按照日志输出
- -t, --timestamps 显示时间戳
- --tail="all" 每个容器的日志末尾显示的行数
- Usage: pause [SERVICE...]
- 暂停运行服务的容器: docker-compose unpause
- Usage: port [options] SERVICE PRIVATE_PORT
- 选项:
- --protocol=proto tcp或udp.默认是tcp
- --index=index 容器的索引.
- Usage: ps [options] [SERVICE...]
- 选项:
- -q, --quiet 仅显示id
- --services 显示服务
- --filter KEY=VAL 按属性过滤服务
- -a, --all 显示所有已停止的容器
- Usage: pull [options] [SERVICE...]
- --ignore-pull-failures 拉取镜像失败时忽略
- --parallel 并行拉取镜像
- --no-parallel 禁用并行拉取镜像
- -q, --quiet 拉取镜像时不打印进度信息
- --include-deps 将服务声明为依赖项
- Usage: push [options] [SERVICE...]
- 选项:
- --ignore-push-failures 推送镜像失败时忽略
- Usage: restart [options] [SERVICE...]
- 选项:
- -t, --timeout TIMEOUT 以秒为单位指定关闭超时
- Usage: rm [options] [SERVICE...]
- 选项:
- -f, --force 不要询问是否删除,强制删除.
- -s, --stop 在移除之前停止容器
- -v 删除附加到容器的存储卷
-
- 列出所有卷,使用docker volume ls。
- 任何不在卷中的数据都将丢失。
-
- 删除已停止的服务容器。 默认情况下,不会删除附加到容器的存储卷
- Usage:
- run [options] [-v VOLUME...] [-p PORT...] [-e KEY=VAL...] [-l KEY=VALUE...] SERVICE [COMMAND] [ARGS...]
- 选项:
- -d, --detach 在后台运行容器,打印新容器名称
- --name NAME 为容器指定名称
- --entrypoint CMD 覆盖镜像的入口点
- -e KEY=VAL 设置环境变量
- -l, --label KEY=VAL 添加或覆盖标签(可多次使用)
- -u, --user="" 以指定的用户名或uid运行
- --no-deps 不要启动依赖的服务
- --rm 运行后删除容器
- -p, --publish=[] 将容器的端口发布到主机
- --service-ports 在启用并映射服务端口的情况下运行命令给主机.
- --use-aliases 在网络中使用服务的网络别名
- -v, --volume=[] 绑定一个存储卷
- -w, --workdir="" 容器内的工作目录
-
- 例如:
- docker-compose run --service-ports web python manage.py shell
- docker-compose run --publish 8080:80 -p 2022:22 -p 127.0.0.1:2021:21 web python manage.py shell
- docker-compose run db psql -h db -U docker
- docker-compose run --no-deps web python manage.py shell
- 请使用带有--scale标志的up命令。
- Usage: scale [options] [SERVICE=NUM...]
- 选项:
- -t, --timeout TIMEOUT 以秒为单位指定关闭超时
-
- 设置要为服务运行的容器数。 数字以service = num的形式指定为参数:
- docker-compose scale web=2 worker=3
- Usage: start [SERVICE...]
- 启动服务的现有容器
- Usage: stop [options] [SERVICE...]
- -t, --timeout TIMEOUT 以秒为单位指定关闭超时
- Usage: top [SERVICE...]
- 显示运行的进程.
- Usage: unpause [SERVICE...]
- 取消暂停服务的暂停容器
- Usage: up [options] [--scale SERVICE=NUM...] [SERVICE...]
- 选项:
- -d, --detach 在后台运行容器,打印新的容器名称
- --no-color 产生单色输出
- --quiet-pull 拉取时不打印进度信息
- --no-deps 不要启动与这个服务依赖的其他服务
- --force-recreate 即使配置也重新创建容器
- --always-recreate-deps 重新创建依赖容器
- --no-recreate 如果容器已存在,就不要创建.
- --no-build 即使丢失,也不要构建镜像.
- --no-start 创建后不要启动服务
- --build 在启动容器之前构建映像
- --abort-on-container-exit 如果有任何容器停止,则停止所有容器
- -t, --timeout TIMEOUT 对容器使用此超时(以秒为单位)连接时或容器时关闭.
- -V, --renew-anon-volumes 重新创建存储卷,不检索之前容器的数据.
- --remove-orphans 删除未定义的服务的容器
- --exit-code-from SERVICE 返回所选服务的退出代码
- --scale SERVICE=NUM 将SERVICE扩展到NUM个实例
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。