浅探 docker-compose 设计理念思想
docker-compose 官方文档阅读记录
views
| comments
Docker-Compose#
Docker compose 可以定义和运行多个容器的应用程序,可以在一个 YAML 文件中管理多个内容,包括 services
、network
、volumes
。通过一个命令就可以创建并运行预定义好的所有 services
。
docker compose 包括了掌握整个应用程序的生命周期的命令:
-
Start, stop, and rebuild services
-
View the status of running services
-
Stream the log output of running services
-
Run a one-off command on a service
在某一个容器 service 中临时运行一个命令,运行完之后就直接退出。
bashdocker compose run web python manage.py migrate # 在 web 服务中运行之后的命令 python manage.py migrate 之后退出
Compose Spec#
一个简单的 Compose Sec 文件示例:
name: myqpp
services:
frontend:
image: example/webapp
ports:
- "443:8043"
networks:
- front-tier
- back-tier
configs:
- httpd-config
secrets:
- server-certificate
backend:
image: example/database
volumes:
- db-data:/etc/data
networks:
- back-tier
volumes:
db-data:
driver: flocker
driver_opts:
size: "10GiB"
configs:
httpd-config:
external: true
secrets:
server-certificate:
external: true
networks:
# The presence of these objects is sufficient to define them
front-tier: {}
back-tier: {}
yaml其中定义了两个 service
,包括 frontend
以及 backend
,以及相应的挂载 volumes
和 网络 front-tier
back-tier