docker-compose基本命令摘录
基本要素
启动脚本 必须
Dockerfile 必须
docker-compose.yml 必须
requirements.txt (python下依赖三方工具),是Dockerfile中有这部分操作
docker-compose相关命令
build 构建或重建服务容器
--compress 通过gzip压缩构建;--force-rm 删除服务构建过程中产生的临时容器;--no-cache 构建过程中不使用缓存;--pull 通过拉取操作来获取更新版本的镜像;-m,--memory MEM值 为构建的容器设置内存大小;-
-build-arg key=val为服务设置构建时的变量;
可以随时在运行docker-compose build来重新构建
bundle 基于compose文件生成Docker bundle
--push-images 自动push带build参数的服务中的镜像-o, --output PATH 指定输出到bundle file的文件名(默认<project name>.dab)
config 查看并校验Compose文件
--resolve-image-digests 将镜像标签标记为摘要-q, --quiet 只验证配置, 正确时不输出任何内容,错误时输出错误信息--services 打印服务名--volumes 打印数据卷名
create 创建镜像
--force-recreate 强制重新创建容器,禁止与--no-recreate一同使用--no-recreate 若容器已存在,则不重新创建,禁止与--force-recreate一同使用--no-build 不自动构建缺失的服务镜像--build 在启动容器前构建服务镜像
down 停止或删除 容器/网络/镜像/卷containers, networks, images, volumes
--rmi type 删除镜像,type取值为all或local,其中all,删除yml文件中定义的所有镜像;local,删除镜像名为空的镜像-v, --volumes 删除在yml文件中定义的和匿名附在容器上的数据卷--remove-orphans 删除未在yml中定义的容器
events 接受来自容器的实时event
--json 使用json对象输出events
exec 在运行的容器里面执行命令
-d 后台运行--privileged 获取特权--user USER 指定运行用户-T 禁用分配TTY,默认是分配TTY--index=index 当服务有多个容器时指定该参数为目标容器序号登陆到目标服务,如:docker-compose exec –index=1 web /bin/bash
kill 容器
-s 指定发送的信号来停止服务,如docker-compose kill -s SIGINT
logs 查看容器输出
--no-color关闭颜色区分不同服务日志的功能(默认是开启的)
ps 显示所有容器
-q, --quiet 只显示IDs--services 显示服务名
--filter KEY=VAL 通过属性过滤服务-a, --all 显示所有容器
pull 拉取镜像
--ignore-pull-failures 忽略pull时的错误--parallel 多个镜像同时拉取--quiet pull过程中不打印进度信息
push 上传镜像
--ignore-push-failures 忽略push时的错误
restart 重启容器
-t,--timeout TIMEOUT 重启容器的超时(默认为10秒)
rm 移除已经停止的容器
--f, --force 强制删除,不管容器状态是运行还是停止-v 删除容器挂载的数据卷
run 运行容器
-d, --detach 后台运行--name NAME 指定容器名--entrypoint CMD 重写镜像的入口命令-e KEY=VAL 设置环境变量-l, --label KEY=VAL 新增或重写标签-u, --user="" 指定运行的用户名或uid--no-deps 不启动链接服务--rm 运行完后删除容器.禁止与-d同用-p,
--publish=[] 对外暴露服务端口--service-ports 使用服务端口--use-aliases 使用网络别名进行连接-v, --volume=[] 设置数据卷-T 禁用tty ,默认是使用的
-w, --workdir="" 指定工作路径
scale 设置镜像运行时的容器数量
通过service=num来设置,如docker-compose scale tomcat=2 db=1
stop 停止容器
-t,--timeout TIMEOUT 停止容器的超时(默认为10秒)
up 创建或启动容器
-d 后台运行--force-recreate 强制重新创建容器,禁止与
--no-recreate一同使用--no-color 禁用颜色来区分不同的服务的控制输出
--no-deps 禁用服务所链接的容器--no-recreate 若容器已存在,则不重新创建,禁止与--force-recreate一同使用--no-build 不自动构建缺失的服务镜像
--build 在启动容器前构建服务镜像--abort-on-container-exit 若任何一个容器被停止,则停止所有容器,禁止与-d一同使用-t, --timeout TIMEOUT 停止容器的超时(默认为10秒)--remove-orphans 删除服务中没有在yml文件中定义的容器--scale SERVICE=NUM 设置服务运行容器的个数,将覆盖yml中通过scale指定的参数
port 输出容器绑定的端口信息
--protocol=proto,指定端口协议为TCP(默认)或UDP--index=index,当服务有多个容器时指定该参数为目标容器序号(默认1)
start 启动容器
top 显示容器运行时的进程信息
unpause 将挂起的容器恢复运行
pause 将容器挂起
version 查看Docker-Compose的版本信息
删除所有镜像
docker-compose down --rmi all
重新构建镜像
docker-compose build 或 docker-compose up --build