mirror of
https://github.com/UniversityOfHelsinkiCS/oodikone.git
synced 2026-10-12 19:03:39 +03:00
165 lines
4.1 KiB
YAML
165 lines
4.1 KiB
YAML
x-defaults: &defaults
|
|
restart: unless-stopped
|
|
|
|
services:
|
|
backend:
|
|
<<: *defaults
|
|
container_name: backend
|
|
depends_on:
|
|
- kone-db
|
|
- redis
|
|
- sis-db
|
|
- user-db
|
|
environment:
|
|
CI: 'true'
|
|
DB_URL_USER: postgres://postgres@user-db:5432/user-db
|
|
DB_URL_KONE: postgres://postgres@kone-db:5432/kone-db
|
|
FRONT_URL: http://localhost:1337
|
|
REDIS: redis
|
|
SECRET_TOKEN: dev
|
|
SIS_DB_URL: postgres://postgres@sis-db:5432/sis-db
|
|
SIS_UPDATER_URL: http://sis-updater-scheduler:8082
|
|
IMPORTER_DB_API_URL: 'https://api-toska.apps.ocp-prod-0.k8s.it.helsinki.fi/importer'
|
|
JAMI_URL: 'http://jami:3003/'
|
|
CRYPT_KEY: 'e16730fce263d5270ba8dcf84d068a32556542455e71331880d6c1c5e4db9b4e'
|
|
build:
|
|
context: services
|
|
dockerfile: backend/Dockerfile
|
|
image: oodikone-backend:staging
|
|
profiles:
|
|
- oodikone
|
|
|
|
frontend:
|
|
<<: *defaults
|
|
container_name: frontend
|
|
build:
|
|
context: services
|
|
dockerfile: frontend/Dockerfile
|
|
image: oodikone-frontend:staging
|
|
profiles:
|
|
- oodikone
|
|
|
|
kone-db:
|
|
<<: *defaults
|
|
container_name: kone-db
|
|
environment:
|
|
PGDATA: /data
|
|
POSTGRES_DB: kone-db
|
|
POSTGRES_HOST_AUTH_METHOD: trust
|
|
image: registry-toska.ext.ocp-prod-0.k8s.it.helsinki.fi/kone-db
|
|
|
|
redis:
|
|
<<: *defaults
|
|
command: >
|
|
sh -c 'redis-server --appendonly yes && redis-cli flushall'
|
|
image: redis:7.2.6
|
|
container_name: redis
|
|
ports:
|
|
- 6379:6379
|
|
|
|
sis-db:
|
|
<<: *defaults
|
|
container_name: sis-db
|
|
image: registry-toska.ext.ocp-prod-0.k8s.it.helsinki.fi/sis-db
|
|
environment:
|
|
PGDATA: /data
|
|
POSTGRES_DB: sis-db
|
|
POSTGRES_HOST_AUTH_METHOD: trust
|
|
shm_size: 2gb
|
|
|
|
user-db:
|
|
<<: *defaults
|
|
container_name: user-db
|
|
environment:
|
|
PGDATA: /data
|
|
POSTGRES_DB: user-db
|
|
POSTGRES_HOST_AUTH_METHOD: trust
|
|
image: registry-toska.ext.ocp-prod-0.k8s.it.helsinki.fi/user-db
|
|
|
|
jami:
|
|
<<: *defaults
|
|
image: quay.io/toska/jami:production
|
|
environment:
|
|
- npm_config_cache=/tmp
|
|
- PORT=3003
|
|
- NODE_ENV=dev
|
|
- DATABASE_URL=postgres://postgres:postgres@jami-db:5432/postgres
|
|
ports:
|
|
- 3003:3003
|
|
container_name: jami
|
|
|
|
jami-db:
|
|
<<: *defaults
|
|
image: postgres:15.10
|
|
environment:
|
|
- PGDATA=/data
|
|
- POSTGRES_PASSWORD=postgres
|
|
container_name: jami-db
|
|
ports:
|
|
- 5433:5432
|
|
|
|
nginx:
|
|
image: nginx:latest
|
|
container_name: nginx
|
|
depends_on:
|
|
- frontend
|
|
- backend
|
|
ports:
|
|
- 1337:80
|
|
volumes:
|
|
- ./nginx.conf:/etc/nginx/nginx.conf
|
|
profiles:
|
|
- oodikone
|
|
|
|
# Following services are used to run sis-updater-worker when anon sis-db needs to be updated. Could probably also use production version, but this certainly works.
|
|
sis-importer-db:
|
|
<<: *defaults
|
|
container_name: sis-importer-db
|
|
image: registry-toska.ext.ocp-prod-0.k8s.it.helsinki.fi/sis-importer-db
|
|
profiles:
|
|
- updater
|
|
|
|
sis-updater-worker:
|
|
<<: *defaults
|
|
build:
|
|
context: updater/sis-updater-worker
|
|
container_name: sis-updater-worker
|
|
depends_on:
|
|
- redis
|
|
- sis-db
|
|
- sis-importer-db
|
|
environment:
|
|
CI: 'true'
|
|
DB_URL: postgres://postgres@sis-db:5432/sis-db
|
|
REDIS_HOST: redis
|
|
SIS_IMPORTER_DATABASE: sis-importer-db
|
|
SIS_IMPORTER_HOST: sis-importer-db
|
|
SIS_IMPORTER_PASSWORD: postgres
|
|
SIS_IMPORTER_USER: postgres
|
|
SIS_PASSWORD: postgres
|
|
profiles:
|
|
- updater
|
|
|
|
sis-updater-scheduler:
|
|
<<: *defaults
|
|
build:
|
|
context: updater/sis-updater-scheduler
|
|
container_name: sis-updater-scheduler
|
|
depends_on:
|
|
- redis
|
|
- sis-importer-db
|
|
environment:
|
|
CI: 'true'
|
|
REDIS_HOST: redis
|
|
SECRET_TOKEN: dev
|
|
SIS_IMPORTER_DATABASE: sis-importer-db
|
|
SIS_IMPORTER_HOST: sis-importer-db
|
|
SIS_IMPORTER_PASSWORD: postgres
|
|
SIS_IMPORTER_USER: postgres
|
|
SCHEDULE_IMMEDIATE: '${SCHEDULE_IMMEDIATE}'
|
|
EXIT_AFTER_IMMEDIATES: '${EXIT_AFTER_IMMEDIATES}'
|
|
ports:
|
|
- 8082:8082
|
|
profiles:
|
|
- updater
|