| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 |
- version: "3.7"
- #docker network create -d overlay --attachable client-net
- networks:
- client-net:
- external: true
- volumes:
- redis-data:
- services:
- registrator:
- image: marcuslinke/registrator:2017-10-25
- # image: gliderlabs/registrator:latest
- hostname: "{{.Node.Hostname}}"
- deploy:
- mode: global
- endpoint_mode: dnsrr
- update_config:
- parallelism: 1
- failure_action: rollback
- delay: 30s
- restart_policy:
- condition: any
- delay: 5s
- window: 120s
- networks:
- - client-net
- volumes:
- - /var/run/docker.sock:/tmp/docker.sock
- command:
- - -cleanup=true
- - -internal
- - -deregister=always
- - -swarm-replicas-aware=false
- # - -swarm-manager-servicename=swarm
- - -resync=15
- - -ttl=15
- - -ttl-refresh=10
- - -retry-interval=2000
- - consul://consul.server:8500
- logging:
- driver: "json-file"
- options:
- max-size: "12m"
- max-file: "5"
- vault:
- image: vault:latest
- hostname: "{{.Node.Hostname}}"
- deploy:
- mode: global
- endpoint_mode: dnsrr
- update_config:
- parallelism: 1
- failure_action: rollback
- delay: 30s
- restart_policy:
- condition: any
- delay: 5s
- window: 120s
- networks:
- - client-net
- # ports:
- # - target: 8200
- # published: 8200
- # mode: host
- # volumes:
- # - ./configs/vault/policies:/vault/policies
- # - ./configs/vault/secrets:/vault/secrets
- command: server
- environment:
- - 'VAULT_LOCAL_CONFIG=
- {
- "backend": {
- "consul": {
- "address":"consul:8500",
- "disable_registration": "true"
- }
- },
- "listener":{
- "tcp": {
- "address": "0.0.0.0:8200",
- "tls_disable": 1
- }
- },
- "disable_mlock": "true"
- }'
- - SKIP_SETCAP=1
- - VAULT_UI=1
- - VAULT_ADDR=http://127.0.0.1:8200
- - VAULT_CLUSTER_INTERFACE=eth0
- - VAULT_API_ADDR=http://vault
- # params for registrator
- - SERVICE_8200_NAME=vault
- - SERVICE_8200_TAGS=production
- - SERVICE_8200_CHECK_TCP=true
- - SERVICE_8200_CHECK_INTERVAL=15s
- - SERVICE_8200_CHECK_TIMEOUT=3s
- - SERVICE_CHECK_DEREGISTER_AFTER=1m
- logging:
- driver: "json-file"
- options:
- max-size: "12m"
- max-file: "5"
- redis:
- image: redis:alpine
- hostname: "{{.Node.Hostname}}"
- deploy:
- mode: global
- endpoint_mode: dnsrr
- update_config:
- parallelism: 1
- failure_action: rollback
- delay: 30s
- restart_policy:
- condition: any
- delay: 5s
- window: 120s
- networks:
- - client-net
- # ports:
- # - target: 6379
- # published: 6379
- # mode: host
- volumes:
- - redis-data:/data
- labels:
- - "SERVICE_NAME=redis"
- env_file:
- - .env
- environment:
- # params for registrator
- - SERVICE_6379_CHECK_TCP=true
- - SERVICE_6379_CHECK_INTERVAL=15s
- - SERVICE_6379_CHECK_TIMEOUT=3s
- - SERVICE_CHECK_DEREGISTER_AFTER=1m
- logging:
- driver: "json-file"
- options:
- max-size: "12m"
- max-file: "5"
|