docker

docker-compose的简单命令

2019-09-29  本文已影响0人  宇晨棒棒的

1.查看docker-compose的版本

docker-compose  --version

2.列出所有运行的容器:

docker-compose  ps  [服务名称]

3.构建或者重新构建服务

docker-compose  build

--force-rm 删除构建过程中的临时容器。

--no-cache 构建镜像过程中不使用 cache(这将加长构建过程) 

--pull 始终尝试通过 pull 来获取更新版本的镜像。

--compress 通过gzip压缩构建上下环境

-m, --memory MEM为构建的容器设置内存大小

服务容器一旦构建后,将会带上一个标记名。可以随时在项目目录下运行docker-compose build来重新构建服务

4.构建启动容器:

docker-compose up   

docker-compose up -d --------->后台启动

docker-compose -f docker-compose.yml  up -d  ---->指定文件后台启动

选项说明:

-d 在后台运行服务容器

-f 指定使用的Compose模板文件,默认为docker-compose.yml,可以多次指定

–no-color 不使用颜色来区分不同的服务的控制输出

–no-deps 不启动服务所链接的容器

–force-recreate 强制重新创建容器,不能与–no-recreate同时使用

–no-recreate 如果容器已经存在,则不重新创建,不能与–force-recreate同时使用

–no-build 不自动构建缺失的服务镜像

–build 在启动容器前构建服务镜像

–abort-on-container-exit 停止所有容器,如果任何一个容器被停止,不能与-d同时使用

-t, –timeout TIMEOUT 停止容器时候的超时(默认为10秒)

–remove-orphans 删除服务中没有在compose文件中定义的容器

5.取消暂停服务:

docker-compose  unpause  【服务名称】

6.暂停服务:

docker-compose  pause  【服务名称】

7.显示运行的进程:

docker-compose top  【服务名称】

8.启动服务已存在的容器:------->(#docker-compose.yml 目录下执行)

docker-compose start 【服务名称】

9.停止已运行的服务的容器-------->(#docker-compose.yml 目录下执行)

docker-compose stop 【服务名称】

10.重新启动指定服务的容器------->(#docker-compose.yml 目录下执行)

docker-compose restart  【服务名称】

11.设置指定服务运行容器的个数,以 service=num 形式指定

docker-compose scale  [SERVICE=NUM...]

一般的,当指定数目多于该服务当前实际运行容器,将新创建并启动容器;反之,将停止容器。

选项:

docker-compose scale db=3 wordpress=2

# 将启动 3 个容器运行 db 服务,2 个容器运行 wordpress 服务。因为端口占用启动不了那么多,但是这样是可行的。

12.在一个服务上运行命令:

docker-compose run  服务名称  command

默认情况下,如果存在关联,则所有关联的服务将会自动被启动,除非这些服务已经在运行中。

该命令类似启动容器后运行指定的命令,相关卷、链接等等都将会按照配置自动创建。

两个不同点:

(1)给定命令将会覆盖原有的自动运行命令;

(2)不会自动创建端口,以避免冲突。

13.删除指定停止状态的服务的容器

docker-compose rm 服务名称

参数:

-f, --force,强制直接删除,包括非停止状态的容器

注意:推荐先执行docker-compose stop命令来停止容器。

14.下载服务镜像

docker-compose pull 镜像名称

docker-compose pull [options] [SERVICE...]

选项:

--ignore-pull-failures 忽略拉取镜像过程中的错误

--parallel,多个镜像同时拉取

15.推送服务镜像到本地仓库或者是远程服务仓库

docker-compose push 

参数说明:

--ignore-push-failures 忽略推送镜像过程中的错误

16.打印服务绑定的公共端口

docker-compose port 服务名称 端口号

选项:

--protocol=proto 指定端口协议,tcp(默认值) 或者 udp。

--index=index 如果同一服务存在多个容器,指定命令对象容器的序号(默认为 1) 。

17.查看服务日志信息

docker-compose logs  【服务名称】

默认情况下,docker-compose将对不同的服务输出使用不同的颜色来区分。

18.通过发送 SIGKILL 信号来停止指定服务的容器:

docker-compose kill 服务名称

kill的服务状态码是Exit 137

19.列出镜像:

docker-compose images

20. 在运行容器中执行命令(默认分配tty)

docker-compose exec  服务名称  command

进入指定的容器中:

docker-compose  exec   <service>    /bin/bash

参数说明:

-d 后台运行命令

--user USER 指定运行的用户

--index=index,当一个服务拥有多个容器时,可通过该参数登陆到该服务下的任何服务,例如:docker-compose exec –index=1 web /bin/bash ,web服务中包含多个容器

21.为服务创建容器不启动

docker-compose  create 服务名称

参数说明:

--force-recreate:重新创建容器,即使配置和镜像没有改变,不兼容--no-recreate参数

--no-recreate:如果容器已经存在,不需要重新创建,不兼容--force-recreate参数

--no-build:不创建镜像,即使缺失

--build:创建容器前,生成镜像

22.验证并查看Compose文件(#docker-compose.yml 目录下执行)

docker-compose config  

选项包括:

若正确则显示配置,若格式错误显示错误原因

-q, --quiet 只验证配置,不输出。当配置正确时,不输出任何内容,当文件配置错误,输出错误信息

--services 打印服务名,一行一个

--volumes 打印数据卷名,一行一个

23.停止和删除容器、网络、卷、镜像

docker-compose down   --------> 关闭并且删除(stop+rm+rm-network)

选项参数:

–rmi type,删除镜像,类型必须是:all,删除compose文件中定义的所有镜像;local,删除镜像名为空的镜像

-v, --volumes,删除已经在compose文件中定义的和匿名的附在容器上的数据卷

--remove-orphans,删除服务中没有在compose中定义的容器

24.从容器中接受事件:

docker-compose event

25. bundle            Generate a Docker bundle from the Compose file

26.docker-compose的参数:

1)指定compose的模板文件,默认是当前目录下的docker-compose.xml

docker-compose -f  ×××.yml 

2)指定项目名称,默认将使用所在目录名称作为项目名

docker-compose -p name

3)输出更多调试信息:

docker-compose --verbose

上一篇 下一篇

猜你喜欢

热点阅读