obs-portal/docker-compose.yaml

89 lines
1.9 KiB
YAML

version: '3'
services:
mongo:
image: mongo
tty: true
volumes:
- ./local/mongo:/data/db
ports:
- '27017:27017'
restart: on-failure
redis:
image: redis
volumes:
- ./local/redis:/data
command: redis-server --appendonly yes
restart: on-failure
api:
image: obs-api
build:
context: ./api
volumes:
- ./api/src:/opt/obs/api/src
- ./api/scripts/obs:/opt/obs/api/scripts/obs
- ./api/views:/opt/obs/api/views
- ./local/api-data:/data
- ./api/.migrations.js:/opt/obs/api/.migrations.js
- ./api/migrations:/opt/obs/api/migrations/
- ./api/config.dev.json:/opt/obs/api/config.json
environment:
- PORT=3000
- MONGODB_URL=mongodb://mongo/obsTest
- DATA_DIR=/data
links:
- mongo
- redis
ports:
- '3000:3000'
restart: on-failure
command:
- npm
- run
- dev
worker:
image: obs-api
build:
context: ./api
volumes:
- ./api/src:/opt/obs/api/src
- ./api/scripts/obs:/opt/obs/api/scripts/obs
- ./api/views:/opt/obs/api/views
- ./local/api-data:/data
- ./api/config.dev.json:/opt/obs/api/config.json
environment:
- DATA_DIR=/data
links:
- mongo
- redis
restart: on-failure
command:
- npm
- run
- dev:worker
frontend:
image: obs-frontend
build:
context: ./frontend
volumes:
- ./frontend/src:/opt/obs/frontend/src
- ./frontend/public:/opt/obs/frontend/public
- ./frontend/tsconfig.json:/opt/obs/frontend/tsconfig.json
- ./frontend/package.json:/opt/obs/frontend/package.json
- ./frontend/src/config.dev.json:/opt/obs/frontend/src/config.json
environment:
- PORT=3000
links:
- api
ports:
- '3001:3000'
restart: on-failure
command:
- npm
- start