多容器的APP太恶心
- 要拉取多个image
- 要创建多个container
- 要启动、停止、删除多个container
Docker Compose批处理
- Docker Compose 是一个
开发环境
使用的工具,通过yml来定义配置 - yml的version与Docker Engine的版本是对应的
- yml内容由services、volumes、networks三部分组成
wordpress项目
docker run -d --name mysql -v mysqldata:/var/lib/mysql -e MYSQL_DATABASE=wp -e MYSQL_ROOT_PASSWORD=root mysql:5.7.22
docker run --name wordpress --link mysql -d -p 8080:80 wordpress
转换
version: '3'
services:
wordpress:
image: wordpress
ports:
- 8080:80
depends_on:
- mysql
environment:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_PASSWORD: root
networks:
- my-bridge
mysql:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: wordpress
volumes:
- mysql-data:/var/lib/mysql
networks:
- my-bridge
volumes:
mysql-data:
networks:
my-bridge:
driver: bridge
flask redis项目
version: "3"
services:
redis:
image: redis
web:
build:
context: .
dockerfile: Dockerfile
ports:
- 5000:5000
environment:
REDIS_HOST: redis
转换
docker run -d --name redis redis
docker build -t siguoya/flask-redis .
docker run -d --name web --link redis -e REDIS_HOST=redis -p 5000:5000 siguoya/flask-redis
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。