services: hapi-fhir: image: "hapiproject/hapi:latest" depends_on: - hapi-db volumes: - ./hapi-config:/data/hapi environment: SPRING_CONFIG_LOCATION: ${SPRING_CONFIG_LOCATION} SPRING_DATASOURCE_URL: ${SPRING_DATASOURCE_URL} SPRING_DATASOURCE_USERNAME: ${SPRING_DATASOURCE_USERNAME} SPRING_DATASOURCE_PASSWORD: ${SPRING_DATASOURCE_PASSWORD} SPRING_DATASOURCE_DRIVERCLASSNAME: ${SPRING_DATASOURCE_DRIVERCLASSNAME} SPRING_JPA_PROPERTIES_HIBERNATE_DIALECT: ${SPRING_JPA_PROPERTIES_HIBERNATE_DIALECT} networks: - hapi-network hapi-db: image: "postgres:14.6" restart: always user: root environment: POSTGRES_DB: ${POSTGRES_DB} POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} volumes: - hapi-data:/var/lib/postgresql/data networks: - hapi-network healthcheck: test: ["CMD-SHELL", "pg_isready -p 5433"] interval: 20s timeout: 10s retries: 5 command: -p 5433 bus-gateway: build: context: ./bus-gateway environment: BUS_URL: ${BUS_URL} BUS_JWT_SECRET: ${BUS_JWT_SECRET} BUS_ISSUER: ${BUS_ISSUER} MPI_URL: ${MPI_URL} DOCUMENT_REGISTRY_URL: ${DOCUMENT_REGISTRY_URL} MPI_SCOPE: ${MPI_SCOPE} DOCUMENT_REGISTRY_SCOPE: ${DOCUMENT_REGISTRY_SCOPE} FHIR_URL: http://hapi-fhir:8080/fhir BUS_DEBUG: ${BUS_DEBUG} ports: - 9229:9229 networks: - hapi-network command: node --inspect=0.0.0.0:9229 ./bin/www nginx: image: nginx:alpine depends_on: - hapi-fhir - bus-gateway ports: - "80:80" - "443:443" volumes: # Selecciona la config con NGINX_CONF=http (default) o NGINX_CONF=https en el .env - ./nginx/${NGINX_CONF:-http}.conf:/etc/nginx/nginx.conf:ro secrets: - ssl_cert - ssl_key networks: - hapi-network networks: hapi-network: name: hapi-network volumes: hapi-data: name: hapi-data driver: local secrets: ssl_cert: file: ${SSL_CERT_PATH:-./certs/server.crt} ssl_key: file: ${SSL_KEY_PATH:-./certs/server.key}