2
0
Fork 0
backend/docker-compose.staging.yml

198 lines
4.9 KiB
YAML
Raw Normal View History

2019-03-24 01:11:57 +08:00
#
# Deployment
#
# Requirements
2019-07-27 12:39:52 +08:00
# ./backend-core/postgres/
# ./keys/
2019-03-24 01:11:57 +08:00
#
version: "3"
services:
pg:
image: postgres:10.3
2019-08-04 05:32:11 +08:00
restart: unless-stopped
2019-03-24 01:11:57 +08:00
environment:
- POSTGRES_USER=root
- POSTGRES_PASSWORD=insecure_postgres_password
2019-03-24 01:11:57 +08:00
- POSTGRES_DB=core
volumes:
- ./backend-core/postgres:/docker-entrypoint-initdb.d:ro
networks:
- pgnet
nats:
image: nats:latest
2019-08-04 05:32:11 +08:00
restart: unless-stopped
2019-03-24 01:11:57 +08:00
networks:
- natsnet
redis:
image: redis:latest
2019-08-04 05:32:11 +08:00
restart: unless-stopped
2019-03-24 01:11:57 +08:00
networks:
- redisnet
2019-07-27 12:39:52 +08:00
minio:
image: minio/minio:latest
2019-08-04 05:32:11 +08:00
restart: unless-stopped
2019-07-27 12:39:52 +08:00
environment:
- MINIO_ACCESS_KEY=insecure_access_key
- MINIO_SECRET_KEY=insecure_secret_key
volumes:
- ./files:/export
command: minio server /export
networks:
- minionet
2019-03-24 01:11:57 +08:00
core:
image: registry.makerforce.io/beep/backend-core:latest
restart: unless-stopped
depends_on:
- pg
environment:
- LISTEN=:80
- POSTGRES=postgresql://root:insecure_postgres_password@pg:5432/core?sslmode=disable
2019-10-23 18:42:03 +08:00
- NATS=nats://nats:4222
2019-03-24 01:11:57 +08:00
networks:
- pgnet
2019-03-25 00:49:44 +08:00
- http
2019-10-23 18:42:03 +08:00
- natsnet
2019-03-24 23:54:17 +08:00
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/core/
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
2019-03-24 01:11:57 +08:00
heartbeat:
image: registry.makerforce.io/beep/backend-heartbeat:latest
restart: unless-stopped
depends_on:
- redis
environment:
- LISTEN=:80
- REDIS=redis:6379
networks:
- redisnet
2019-03-25 00:49:44 +08:00
- http
2019-03-24 23:54:17 +08:00
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/heartbeat/
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
2019-03-24 01:11:57 +08:00
login:
image: registry.makerforce.io/beep/backend-login:latest
restart: unless-stopped
environment:
- LISTEN=:80
- POSTGRES=postgresql://root:insecure_postgres_password@pg:5432/core?sslmode=disable
2019-03-24 01:11:57 +08:00
- REDIS=redis:6379
- TTL=120s
- MESSAGING_SID=MG19d18fafcff1f3f34dff04c5b04c0699
- TWILIO_SID=AC22ea3eea85e5108a96b947aea8ab1320
- TWILIO_TOKEN=fb23fa1a1564aa9f62a7a3117f07b3a0
2019-07-27 12:39:52 +08:00
- CORE_URL=http://core/user
volumes:
- ./keys/key:/key:ro
2019-03-24 01:11:57 +08:00
networks:
2019-03-25 00:49:44 +08:00
- http
2019-03-24 01:11:57 +08:00
- redisnet
- pgnet
2019-03-24 23:54:17 +08:00
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/login/
- traefik.port=80
2019-03-24 01:11:57 +08:00
auth:
image: registry.makerforce.io/beep/backend-auth:latest
restart: unless-stopped
environment:
- LISTEN=0.0.0.0:10205
2019-07-27 12:39:52 +08:00
volumes:
- ./keys/key.pub:/key.pub:ro
2019-03-24 01:11:57 +08:00
networks:
2019-03-25 00:49:44 +08:00
- http
2019-03-24 01:11:57 +08:00
2019-07-27 12:39:52 +08:00
pictures:
image: registry.makerforce.io/beep/backend-pictures:latest
2019-03-24 01:11:57 +08:00
restart: unless-stopped
depends_on:
2019-07-27 12:39:52 +08:00
- minio
2019-03-24 01:11:57 +08:00
environment:
- LISTEN=:80
2019-07-27 12:39:52 +08:00
- MINIO_ENDPOINT=minio:9000
- MINIO_ID=insecure_access_key
- MINIO_KEY=insecure_secret_key
- MINIO_BUCKET_NAME=beep
- MINIO_LOCATION=us-east-1
2019-03-24 01:11:57 +08:00
networks:
2019-07-27 12:39:52 +08:00
- minionet
2019-03-24 23:54:17 +08:00
labels:
- traefik.enable=true
2019-07-27 12:39:52 +08:00
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/pictures/
2019-03-24 23:54:17 +08:00
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
2019-03-24 01:11:57 +08:00
2019-07-27 12:39:52 +08:00
permissions:
image: registry.makerforce.io/beep/backend-permissions:latest
2019-03-24 01:11:57 +08:00
restart: unless-stopped
depends_on:
2019-07-27 12:39:52 +08:00
- redis
- pg
2019-03-24 01:11:57 +08:00
environment:
- LISTEN=:80
- POSTGRES=postgresql://root:insecure_postgres_password@pg:5432/core?sslmode=disable
2019-07-27 12:39:52 +08:00
- REDIS=redis:6379
2019-03-24 01:11:57 +08:00
networks:
2019-07-27 12:39:52 +08:00
- pgnet
- redisnet
- permissionsnet
2019-03-24 01:11:57 +08:00
2019-07-27 12:39:52 +08:00
webrtc:
image: registry.makerforce.io/beep/backend-webrtc:latest
2019-03-24 01:11:57 +08:00
restart: unless-stopped
depends_on:
- nats
environment:
- LISTEN=:80
- NATS=nats://nats:4222
2019-07-27 12:39:52 +08:00
- PERMISSIONS_HOST=http://permissions
2019-03-24 01:11:57 +08:00
networks:
- natsnet
2019-03-25 00:49:44 +08:00
- http
2019-07-27 12:39:52 +08:00
- permissionsnet
2019-03-24 23:54:17 +08:00
labels:
- traefik.enable=true
2019-07-27 12:39:52 +08:00
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/webrtc/
2019-03-24 23:54:17 +08:00
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
2019-03-24 01:11:57 +08:00
2019-07-27 12:39:52 +08:00
store:
image: registry.makerforce.io/beep/backend-store:latest
2019-03-24 01:11:57 +08:00
restart: unless-stopped
depends_on:
- nats
environment:
- NATS=nats://nats:4222
2019-07-27 12:39:52 +08:00
- DBPATH=/tmp/badger
- LISTEN=:80
- PERMISSIONS_HOST=http://permissions
2019-03-24 01:11:57 +08:00
networks:
- natsnet
2019-07-27 12:39:52 +08:00
- permissionsnet
2019-03-24 01:11:57 +08:00
networks:
pgnet:
natsnet:
redisnet:
2019-07-27 12:39:52 +08:00
minionet:
permissionsnet:
2019-03-25 00:49:44 +08:00
http:
2019-03-24 22:22:41 +08:00
external:
name: http