如何在一个命令中 运行 多张 docker 图片?
How to run several docker images in one command?
我有 docker-compose 文件和几个服务,例如 nginx、web、redis、postgresql 和他们自己的 Dockerfile
。我总是 运行 docker-machine 然后 运行 docker-compose build && docker-compose up
。但现在我在旧笔记本电脑 (Ubuntu 16) 上工作,它不支持 HyperV 技术,我应该 运行 docker 本机。
问题:我如何使用一个命令构建并运行多个图像,或者 bash 脚本应该这样做吗?
我的docker-撰写文件:
version: '3'
services:
web:
build:
context: ./web
args:
- REQUIREMENTS_FILE=requirements_all.txt
- REQUIREMENTS_SRC_PATH=requirements*.txt
env_file: ./web/.env
volumes:
- ./web:/code
depends_on:
- postgres
- redis
command: newrelic-admin run-program python manage.py runserver 0.0.0.0:8000
nginx:
build: ./nginx/
ports:
- "80:80"
volumes:
- ./web/static:/code/static
depends_on:
- web
postgres:
image: postgres:latest
ports:
- "5432:5432"
environment:
- POSTGRES_USER=administrator
- POSTGRES_PASSWORD=love_docker
volumes:
- /var/lib/postgresql/data/
redis:
image: redis:latest
ports:
- "6379:6379"
volumes:
- /data
所以你需要在你的机器上本地安装docker
$ curl -sSL https://get.docker.com | sh
这将安装 docker,但尚未启动。所以你需要启用并启动服务
# Enable docker to start on boot
$ sudo systemctl enable docker
# Start docker right now
$ sudo systemctl start docker
我有 docker-compose 文件和几个服务,例如 nginx、web、redis、postgresql 和他们自己的 Dockerfile
。我总是 运行 docker-machine 然后 运行 docker-compose build && docker-compose up
。但现在我在旧笔记本电脑 (Ubuntu 16) 上工作,它不支持 HyperV 技术,我应该 运行 docker 本机。
问题:我如何使用一个命令构建并运行多个图像,或者 bash 脚本应该这样做吗?
我的docker-撰写文件:
version: '3'
services:
web:
build:
context: ./web
args:
- REQUIREMENTS_FILE=requirements_all.txt
- REQUIREMENTS_SRC_PATH=requirements*.txt
env_file: ./web/.env
volumes:
- ./web:/code
depends_on:
- postgres
- redis
command: newrelic-admin run-program python manage.py runserver 0.0.0.0:8000
nginx:
build: ./nginx/
ports:
- "80:80"
volumes:
- ./web/static:/code/static
depends_on:
- web
postgres:
image: postgres:latest
ports:
- "5432:5432"
environment:
- POSTGRES_USER=administrator
- POSTGRES_PASSWORD=love_docker
volumes:
- /var/lib/postgresql/data/
redis:
image: redis:latest
ports:
- "6379:6379"
volumes:
- /data
所以你需要在你的机器上本地安装docker
$ curl -sSL https://get.docker.com | sh
这将安装 docker,但尚未启动。所以你需要启用并启动服务
# Enable docker to start on boot
$ sudo systemctl enable docker
# Start docker right now
$ sudo systemctl start docker