version: '3' services: proxy: image: ${REGISTRY}/proxy:${IMAGE_TAG} depends_on: - backend - frontend restart: on-failure ports: - ${FRONTEND_PORT:-80}:80 - ${BACKEND_PORT:-8080}:8080 - ${SSP_PORT:-9080}:9080 - ${SSP_LEGACY_PORT:-10080}:10080 - ${FRONTEND_PORT_SSL:-443}:443 - ${BACKEND_PORT_SSL:-8443}:8443 - ${SSP_PORT_SSL:-9443}:9443 - ${SSP_LEGACY_PORT_SSL:-10443}:10443 env_file: - environment volumes: - ./proxy/ssl:/etc/nginx/conf.d/ssl - ./proxy/non-ssl.conf:/etc/nginx/conf.d/non-ssl.conf - ./proxy/ssl.conf:/etc/nginx/conf.d/ssl.conf logging: options: max-size: "100m" max-file: "5" backend: image: ${REGISTRY}/backend:${IMAGE_TAG} user: "110010100" depends_on: - redis env_file: - environment volumes: - ./backend:/opt/kix/conf.d - shared:/mnt/shared - backend:/mnt/data logging: options: max-size: "100m" max-file: "5" frontend: image: ${REGISTRY}/frontend:${IMAGE_TAG} user: "110010100" depends_on: - backend - redis environment: - USE_SSL=0 - REDIS_CACHE_HOST=redis - FRONTEND_CLIENT_ID=kix-agent-frontend - FRONTEND_NOTIFICATION_ID=kix-agent-frontend - NOTIFICATION_URL=http://frontend:3000/notifications - BACKEND_API_URL=http://backend:8080/api/v1 env_file: - environment volumes: - shared:/mnt/shared - frontend:/mnt/data logging: options: max-size: "100m" db: image: ${REGISTRY}/db:${IMAGE_TAG} hostname: db command: [ "postgres", "-c", "config_file=/etc/postgresql.conf" ] env_file: - environment volumes: - db:/var/lib/postgresql/data - ./db/postgresql.conf:/etc/postgresql.conf shm_size: '2gb' redis: image: ${REGISTRY}/redis:${IMAGE_TAG} volumes: - ./redis/redis.conf:/usr/local/etc/redis/redis.conf volumes: shared: db: backend: frontend: