diff --git a/4.shell/5.docker.md b/4.shell/5.docker.md index 89c4ba7..1e20d40 100644 --- a/4.shell/5.docker.md +++ b/4.shell/5.docker.md @@ -141,3 +141,87 @@ docker container update [OPTIONS] CONTAINER [CONTAINER...] | --memory-swap | | 交换限制等于内存加交换:’`-1`‘以启用无限制的交换 | | --memory-reservation | | 内存软限制 | + + +# docker compose + +## Compose 安装 + +Linux 上我们可以从 Github 上下载它的二进制包来使用,最新发行的版本地址:https://github.com/docker/compose/releases。 + +运行以下命令以下载 Docker Compose 的当前稳定版本: + +```shell +curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose +``` + +要安装其他版本的 Compose,请替换 v2.2.2。 + +Docker Compose 存放在 GitHub,不太稳定。也可以通过执行下面的命令,高速安装 Docker Compose。 + +```shell +curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose +``` + +给予执行权限 创建软连接 + +```shell +chmod +x /usr/local/bin/docker-compose +ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose +``` + + + +## Compose命令 + +``` +# 默认使用docker-compose.yml构建镜像 +$ docker-compose build +$ docker-compose build --no-cache # 不带缓存的构建 + +# 指定不同yml文件模板用于构建镜像 +$ docker-compose build -f docker-compose1.yml + +# 列出Compose文件构建的镜像 +$ docker-compose images + +# 启动所有编排容器服务 +$ docker-compose up -d + +# 查看正在运行中的容器 +$ docker-compose ps + +# 查看所有编排容器,包括已停止的容器 +$ docker-compose ps -a + +# 进入指定容器执行命令 +$ docker-compose exec nginx bash +$ docker-compose exec web python manage.py migrate --noinput + +# 查看web容器的实时日志 +$ docker-compose logs -f web + +# 停止所有up命令启动的容器 +$ docker-compose down + +# 停止所有up命令启动的容器,并移除数据卷 +$ docker-compose down -v + +# 重新启动停止服务的容器 +$ docker-compose restart web + +# 暂停web容器 +$ docker-compose pause web + +# 恢复web容器 +$ docker-compose unpause web + +# 删除web容器,删除前必需停止stop web容器服务 +$ docker-compose rm web + +# 查看各个服务容器内运行的进程 +$ docker-compose top +``` + + +