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

214 lines
5.5 KiB
YAML

#
# Deployment
#
# Requirements
# ./backend-core/postgres
#
version: "3"
services:
pg:
image: postgres:10.3
environment:
- POSTGRES_USER=root
- POSTGRES_PASSWORD=
- POSTGRES_DB=core
ports:
- "5432:5432" # Close this for production
volumes:
- ./backend-core/postgres:/docker-entrypoint-initdb.d:ro
networks:
- pgnet
nats:
image: nats:latest
ports: # Close these for production
- "4222:4222"
- "6222:6222"
- "8222:8222"
networks:
- natsnet
redis:
image: redis:latest
ports:
- "6379:6379" # Close this for production
networks:
- redisnet
core:
image: registry.makerforce.io/beep/backend-core:latest
restart: unless-stopped
depends_on:
- pg
environment:
- LISTEN=:80
- POSTGRES=postgresql://root@pg:5432/core?sslmode=disable
networks:
- pgnet
- http
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
signal:
image: registry.makerforce.io/beep/backend-signal:latest
restart: unless-stopped
environment:
- PORT=80
networks:
- http
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/signal/
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
heartbeat:
image: registry.makerforce.io/beep/backend-heartbeat:latest
restart: unless-stopped
depends_on:
- redis
environment:
- LISTEN=:80
- REDIS=redis:6379
networks:
- redisnet
- http
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
login:
image: registry.makerforce.io/beep/backend-login:latest
restart: unless-stopped
environment:
- LISTEN=:80
- SECRET=secret
- POSTGRES=postgresql://root@pg:5432/core?sslmode=disable
- REDIS=redis:6379
- TTL=120s
- MESSAGING_SID=MG19d18fafcff1f3f34dff04c5b04c0699
- TWILIO_SID=AC22ea3eea85e5108a96b947aea8ab1320
- TWILIO_TOKEN=fb23fa1a1564aa9f62a7a3117f07b3a0
networks:
- http
- redisnet
- pgnet
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/login/
- traefik.port=80
auth:
image: registry.makerforce.io/beep/backend-auth:latest
restart: unless-stopped
environment:
- LISTEN=0.0.0.0:10205
- SECRET=secret
ports:
- "10205:10205" # Remove this for production
networks:
- http
bite:
image: registry.makerforce.io/beep/backend-bite:latest
restart: unless-stopped
depends_on:
- nats
environment:
- LISTEN=:80
- NATS=nats://nats:4222
networks:
- natsnet
- http
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/bite/
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
publish:
image: registry.makerforce.io/beep/backend-publish:latest
restart: unless-stopped
depends_on:
- nats
environment:
- LISTEN=:80
- NATS=nats://nats:4222
- SECRET=secret
networks:
- natsnet
- http
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/publish/
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
store:
image: registry.makerforce.io/beep/backend-store:latest
restart: unless-stopped
depends_on:
- nats
environment:
- NATS=nats://nats:4222
- DBPATH=/tmp/badger
networks:
- natsnet
subscribe:
image: registry.makerforce.io/beep/backend-subscribe:latest
restart: unless-stopped
depends_on:
- nats
environment:
- LISTEN=:80
- NATS=nats://nats:4222
networks:
- natsnet
- http
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/subscribe/
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
transcription:
image: registry.makerforce.io/beep/backend-transcription:latest
restart: unless-stopped
depends_on:
- nats
environment:
- LISTEN=:80
- NATS=nats://nats:4222
- API_KEY=AIzaSyDxSXDefzw9gXCQaVzOCYlRn_vcC9Da9Q0
networks:
- natsnet
- http
labels:
- traefik.enable=true
- traefik.frontend.rule=Host:staging.beepvoice.app;PathPrefixStrip:/transcription/
- traefik.frontend.auth.forward.address=http://auth:10205/auth
- traefik.frontend.auth.forward.authResponseHeaders=X-User-Claim
- traefik.port=80
networks:
pgnet:
natsnet:
redisnet:
http:
external:
name: http