diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml new file mode 100644 index 0000000..fb1bec5 --- /dev/null +++ b/docker-compose.dev.yml @@ -0,0 +1,158 @@ +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 \ No newline at end of file