我有多个服务的docker-compose文件,例如nginx,web,redis,postgresql和他们自己的Dockerfile
。我总是运行docker-machine,然后运行docker-compose build && docker-compose up
。但是现在我在老款笔记本电脑(Ubuntu 16)上工作,它不支持HyperV技术,我应该本地运行docker。
问题:如何使用一个命令构建和运行多个图像,或者应该使用哪个bash脚本?
我的docker-compose文件:
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
答案 0 :(得分:1)
所以你需要在你的机器上原生安装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