多容器的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.22docker 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-bridgevolumes: 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 redisdocker build -t siguoya/flask-redis .docker run -d --name web --link redis -e REDIS_HOST=redis -p 5000:5000 siguoya/flask-redis