version: "3"
services:
redis:
image: redis:alpine
ports:
- "6379"
networks:
- frontend
deploy:
replicas: 2
update_config:
parallelism: 2
delay: 10s
restart_policy:
condition: on-failure
db:
image: postgres:9.4
volumes:
- db-data:/var/lib/postgresql/data
networks:
- backend
deploy:
placement:
constraints: [node.role == manager]
vote:
image: dockersamples/examplevotingapp_vote:before
ports:
- 5000:80
networks:
- frontend
depends_on:
- redis
deploy:
replicas: 2
update_config:
parallelism: 2
restart_policy:
condition: on-failure
result:
image: dockersamples/examplevotingapp_result:before
ports:
- 5001:80
networks:
- backend
depends_on:
- db
deploy:
replicas: 1
update_config:
parallelism: 2
delay: 10s
restart_policy:
condition: on-failure
worker:
image: dockersamples/examplevotingapp_worker
networks:
- frontend
- backend
deploy:
mode: replicated
replicas: 1
labels: [APP=VOTING]
restart_policy:
condition: on-failure
delay: 10s
max_attempts: 3
window: 120s
placement:
constraints: [node.role == manager]
visualizer:
image: dockersamples/visualizer:stable
ports:
- "8080:8080"
stop_grace_period: 1m30s
volumes:
- "/var/run/docker.sock:/var/run/docker.sock"
deploy:
placement:
constraints: [node.role == manager]
networks:
frontend:
backend:
volumes:
db-data:
这是docker yml 里面的配置,这里面的network 是配置什么的?deploy result vote visualizer 是干啥的?
Docker Compose 是用于定义和运行多容器 Docker 应用程序的工具,其命令行参数众多,下面列举一些常用参数:
-f
或 --file
:指定使用的 Compose 配置文件。例如:docker-compose -f my-compose.yml up
。
-p
或 --project-name
:为项目设置一个名称,默认情况下,Compose 会使用当前目录名作为项目名。例如:docker-compose -p my-project up
.
up
:根据 docker-compose.yml 文件创建并启动服务。可以与以下标志结合使用:
--build
:在启动前构建(或重新构建)服务。-d
:后台运行服务。--force-recreate
:强制重新创建容器。--no-deps
:不启动依赖的服务。
down
:停止并删除所有(或指定的)容器、网络、卷等资源。
start
:启动已经存在的服务。
stop
:停止正在运行的服务。
restart
:重启服务。
logs
:查看服务的日志输出。
scale
:设置指定服务运行的容器数量。
ps
:列出项目中所有的容器。
pull
:拉取服务需要的镜像。
以上只是部分常见参数,更多详细信息可以通过 docker-compose --help
查看全部参数及其说明。