Docker Compose 的 pull 命令用于从 docker-compose.yml 或 docker-stack.yml 文件中提取服务所需的镜像,而 push 命令则负责将服务镜像上传至注册中心或代码库。
语法格式
Usage: pull [options] [SERVICE…]
可选项:
–ignore-pull-failures 继续拉取其他镜像,即使某些镜像拉取失败。
–parallel 过时,允许并行拉取多个镜像(默认启用)。
–no-parallel 禁用并行拉取镜像。
-q, –quiet 拉取进度信息。
–include-deps 同时拉取服务的依赖项。
例如,假设您有以下来自于“快速入门:撰写和RAIls”的 docker-compose.yml 文件:
version: ‘2’
services:
db:
image: postgres
web:
build: .
command: bundle exec Rails s -p 3000 -b ‘0.0.0.0’
volumes:
– .:/Myapp
ports:
– “3000:3000”
depends_on:
– db
如果您在与定义服务的 docker-compose.yml 文件相同的目录中运行 docker-compose pull ServiceName,Docker 将会提取相关的镜像。例如,要拉取在示例中配置为 db 服务的 PostgreSQL 镜像,您可以执行 docker-compose pull db。
语法格式
Usage: push [options] [SERVICE…]
可选项:
–ignore-push-failures 推送镜像时忽略错误。
将服务镜像推送至各自的注册中心或代码库。
假设您正在推送本地构建的镜像,并且您拥有相应的构建权限,以下是一个示例:
version: ‘3’
services:
service1:
build: .
image: localhost:5000/yourimage # 上传至本地注册中心
service2:
build: .
image: your-dockerid/yourimage # 上传至 Docker Hub 的代码库
[[[IMG_1]]]
[[[IMG_2]]]
[[[IMG_3]]]
