2016-10-14 13:57:26 +03:00
|
|
|
#############################################################################
|
|
|
|
# CONSUL
|
|
|
|
#############################################################################
|
2016-10-20 19:47:37 +03:00
|
|
|
consul:
|
|
|
|
image: progrium/consul:latest
|
|
|
|
labels:
|
|
|
|
- triton.cns.services=consul
|
2016-11-02 18:13:15 +02:00
|
|
|
- com.docker.swarm.affinities=["container!=~*"]
|
2016-10-20 19:47:37 +03:00
|
|
|
restart: always
|
|
|
|
mem_limit: 128m
|
|
|
|
expose:
|
|
|
|
- 53
|
|
|
|
- 8300
|
|
|
|
- 8301
|
|
|
|
- 8302
|
|
|
|
- 8400
|
|
|
|
- 8500
|
|
|
|
env_file: .env
|
|
|
|
ports:
|
|
|
|
- 8500:8500
|
|
|
|
command: -server -bootstrap -ui-dir /ui
|
2016-10-17 18:41:17 +03:00
|
|
|
#############################################################################
|
|
|
|
# CloudAPI GraphQL
|
|
|
|
#############################################################################
|
2016-10-20 19:47:37 +03:00
|
|
|
cloudapi:
|
2016-10-24 19:35:35 +03:00
|
|
|
image: quay.io/yldio/joyent-dashboard-cloudapi-graphql:latest
|
2016-10-20 19:47:37 +03:00
|
|
|
mem_limit: 128m
|
|
|
|
labels:
|
|
|
|
- triton.cns.services=cloudapi
|
2016-11-02 18:13:15 +02:00
|
|
|
- com.docker.swarm.affinities=["container!=~*cloudapi*"]
|
2016-10-20 19:47:37 +03:00
|
|
|
env_file: .env
|
|
|
|
environment:
|
2016-11-02 18:13:15 +02:00
|
|
|
- CONSUL_AGENT=1
|
2016-10-20 19:47:37 +03:00
|
|
|
- PORT=3000
|
|
|
|
ports:
|
|
|
|
- 3000:3000
|
2016-10-20 15:36:24 +03:00
|
|
|
#############################################################################
|
|
|
|
# Frontend
|
|
|
|
#############################################################################
|
2016-10-24 18:31:05 +03:00
|
|
|
frontend:
|
2016-10-24 19:35:35 +03:00
|
|
|
image: quay.io/yldio/joyent-dashboard-frontend:latest
|
2017-01-18 13:49:36 +02:00
|
|
|
mem_limit: 256m
|
2016-10-20 19:47:37 +03:00
|
|
|
labels:
|
2016-10-24 18:31:05 +03:00
|
|
|
- triton.cns.services=frontend
|
2016-11-02 18:13:15 +02:00
|
|
|
- com.docker.swarm.affinities=["container!=~*frontend*"]
|
2016-10-20 19:47:37 +03:00
|
|
|
env_file: .env
|
|
|
|
environment:
|
2016-11-02 18:13:15 +02:00
|
|
|
- CONSUL_AGENT=1
|
2016-10-20 19:47:37 +03:00
|
|
|
- PORT=8000
|
|
|
|
ports:
|
|
|
|
- 8000:8000
|
2016-10-28 18:50:05 +03:00
|
|
|
#############################################################################
|
2016-11-01 13:19:15 +02:00
|
|
|
# UI
|
2016-10-28 18:50:05 +03:00
|
|
|
#############################################################################
|
|
|
|
ui:
|
|
|
|
image: quay.io/yldio/joyent-dashboard-ui:latest
|
|
|
|
mem_limit: 128m
|
|
|
|
labels:
|
|
|
|
- triton.cns.services=ui
|
2016-11-02 18:13:15 +02:00
|
|
|
- com.docker.swarm.affinities=["container!=~*ui*"]
|
2016-10-28 18:50:05 +03:00
|
|
|
env_file: .env
|
|
|
|
environment:
|
2016-11-02 18:13:15 +02:00
|
|
|
- CONSUL_AGENT=1
|
2016-10-28 18:50:05 +03:00
|
|
|
- PORT=8080
|
2016-11-02 18:13:15 +02:00
|
|
|
#############################################################################
|
|
|
|
# Nginx as a load-balancing tier and reverse proxy
|
|
|
|
#############################################################################
|
|
|
|
nginx:
|
|
|
|
image: quay.io/yldio/joyent-portal-nginx
|
|
|
|
restart: always
|
|
|
|
mem_limit: 128m
|
2016-10-28 18:50:05 +03:00
|
|
|
ports:
|
2016-11-03 17:59:49 +02:00
|
|
|
- 80:80
|
|
|
|
- 443:443
|
|
|
|
- 9090:9090
|
2016-11-02 18:13:15 +02:00
|
|
|
env_file: .env
|
|
|
|
environment:
|
|
|
|
- CONSUL_AGENT=1
|
|
|
|
labels:
|
|
|
|
- triton.cns.services=nginx
|
|
|
|
- com.docker.swarm.affinities=["container!=~*nginx*"]
|