pixelbridge-orthanc/docker-compose.yml
2025-01-28 00:17:37 +06:00

158 lines
4.0 KiB
YAML

services:
postgres:
image: postgres:alpine
container_name: postgres
profiles: [main, extra]
ports:
- "5432:5432"
networks:
pacs:
aliases:
- postgres
environment:
PGPASSWORD: ${PGPASSWORD}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: ${POSTGRES_DB}
PGDATA: ${PGDATA}
PGTZ: ${PGTZ}
POSTGRES_HOST_AUTH_METHOD: "trust"
volumes:
- ${POSTGRES_DATA_MNT}:${PGDATA}:Z
healthcheck:
test: ["CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}"]
start_period: 20s
interval: 30s
retries: 5
timeout: 5s
restart: unless-stopped
orthanc:
container_name: orthanc
profiles: [main, extra]
image: orthancteam/orthanc
ports:
- "8042:8042"
- "4242:4242"
volumes:
- ${ORTHANC_CONFIG:-./config/orthanc}:/etc/orthanc/:ro
- ${ORTHANC_DB_MNT:-./volumes/orthanc_db}:/var/lib/orthanc/db:Z
- ${ORTHANC_OHIF:-./config/ohif/ohif.js}:/usr/local/share/orthanc/ohif.js:ro
- ${ORTHANC_LOG:-./volumes/orthanc_logs}:/var/log/orthanc
env_file:
- orthanc.env
environment:
ORTHANC__DICOM_AET: "${ORTHANC_AET}"
ORTHANC__POSTGRESQL__HOST: "${POSTGRES_HOST}"
restart: unless-stopped
networks:
pacs:
aliases:
- orthanc
depends_on:
- postgres
ohif:
container_name: ohif
profiles: [main, extra]
image: ohif/app:v3.9.2
ports:
- "3000:80"
environment:
APP_CONFIG: /usr/share/nginx/html/app-config.js
volumes:
- ${NGINX_DEFAULT_CONF}:/etc/nginx/conf.d/default.conf:ro
- ${NGINX_OHIF_CONF}:/etc/nginx/enabled-sites/ohif.conf:ro
- ${OHIF_CONFIG}:/usr/share/nginx/html/app-config.js:ro
- ${OHIF_LOGO}:/usr/share/nginx/html/logo.png:ro
restart: unless-stopped
depends_on:
- orthanc
networks:
pacs:
aliases:
- ohif
meddream:
image: meddream/dicom-viewer:8.5.0
profiles: [extra]
container_name: meddream
restart: unless-stopped
ports:
- "80:8080"
depends_on:
- orthanc
- postgres
networks:
pacs:
aliases:
- meddream
volumes:
- ./config/meddream/application.properties:/opt/meddream/application.properties:ro
#- ./config/meddream/license:/opt/meddream/license:ro
- ./config/meddream/system.json:/opt/meddream/sys/settings/system.json:ro
orthanctoolsjs:
profiles: [extra]
image: salimkanoun/orthanctoolsjs
restart: unless-stopped
ports:
- "4000:4000"
volumes:
- ${ORTHANC_TOOLS_MNT:-./volumes/orthanc_tools}:/OrthancToolsJs/data
environment:
TZ: "${TZ}"
ORTHANC_ADDRESS: "http://orthanc"
ORTHANC_PORT: "8042"
ORTHANC_USERNAME: "${ORTHANC_USERNAME}"
ORTHANC_PASSWORD: "${ORTHANC_PASSWORD}"
REDIS_HOST: "redis"
REDIS_PORT: "6379"
REDIS_PASSWORD: ""
DB_USERNAME: "${POSTGRES_USER}"
DB_PASSWORD: "${POSTGRES_PASSWORD}"
DB_HOST: "${POSTGRES_HOST}"
DB_PORT: ${POSTGRES_PORT}
DB_NAME: ${POSTGRES_DB}
DOMAIN_PROTOCOL: "http"
DOMAIN_ADDRESS: "localhost:4000"
depends_on:
- redis
- orthanc
- postgres
networks:
pacs:
aliases:
- orthanctoolsjs
redis:
profiles: [extra]
image: redis:alpine
networks:
pacs:
aliases:
- redis
pgadmin:
container_name: pgadmin
profiles: [extra]
image: dpage/pgadmin4:latest
restart: unless-stopped
environment:
PGADMIN_DEFAULT_EMAIL: ${PGADMIN_MAIL}
PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_PASS}
PGADMIN_CONFIG_SERVER_MODE: ${PGADMIN_SERVER}
PGADMIN_CONFIG_MASTER_PASSWORD_REQUIRED: ${PGADMIN_MASTER_PASS}
PGADMIN_LISTEN_PORT: ${PGADMIN_PORT}
ports:
- "${PGADMIN_PORT}:${PGADMIN_PORT}"
depends_on:
- postgres
networks:
pacs:
aliases:
- pgadmin
networks:
pacs:
external: true