# 176 서버(192.168.0.176)에서 쓰는 실행 정의.
#
# DB는 컨테이너로 띄우지 않는다 - 기존 PostgreSQL(192.168.0.60)을 그대로 쓴다.
# 앱이 로컬 디스크에 쓰는 것이 없어(업로드 파일은 DB와 Mattermost로 간다) 영속 볼륨도 필요 없다.
services:
  itnhub:
    image: ${ITNHUB_IMAGE:-itnhub:latest}
    container_name: itnhub
    restart: unless-stopped

    # 비밀값은 이미지에도 이 파일에도 넣지 않는다. 서버의 /etc/itnhub/itnhub.env 만 읽는다.
    env_file:
      - /etc/itnhub/itnhub.env

    # 앱 포트는 8877로 고정되어 있다(application.yml).
    ports:
      - "8877:8877"

    # 컨테이너 로그가 무한정 쌓이지 않게 한다.
    logging:
      driver: json-file
      options:
        max-size: "20m"
        max-file: "5"

    # Dockerfile의 HEALTHCHECK를 그대로 쓴다(/login 200 확인).
    deploy:
      resources:
        limits:
          memory: 1500m
