version: '3.8' services: postgresdb: image: postgres:13 container_name: postgres-hospital restart: always environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} ports: - '5432:5432' volumes: - postgres-data:/var/lib/postgresql/data api: image: adminsoftwarecraft/hospital-api:v1.0.0 container_name: hospital-api-container restart: on-failure environment: SPRING_DATASOURCE_URL: jdbc:postgresql://postgresdb:5432/${POSTGRES_DB} SPRING_DATASOURCE_USERNAME: ${POSTGRES_USER} SPRING_DATASOURCE_PASSWORD: ${POSTGRES_PASSWORD} JWT_SECRET: ${JWT_SECRET} MINIO_URL: ${MINIO_URL} MINIO_ACCESS: ${MINIO_ACCESS} MINIO_SECRET: ${MINIO_SECRET} MINIO_BUCKET: ${MINIO_BUCKET} ports: - "8080:8080" depends_on: - postgresdb pgadmin: image: dpage/pgadmin4 container_name: pgadmin-hospital restart: always environment: PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL} PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD} ports: - '8180:80' volumes: - pgadmin-data:/var/lib/pgadmin depends_on: - postgresdb volumes: postgres-data: pgadmin-data: