version: '3' services: postgresql: image: postgres:15 ports: - 5432:5432 environment: - POSTGRES_USER=postgres - POSTGRES_PASSWORD=postgres - PGDATA=/pgdata volumes: - ./sql/setup_schema.sql:/docker-entrypoint-initdb.d/init.sql - ./pgdata:/pgdata webapp: depends_on: - postgresql build: context: ./webapp dockerfile: Dockerfile image: webapp:1.0 ports: - 8443:8443 volumes: - ./appdata:/appdata environment: - DATABASE_HOST=host.docker.internal - DATABASE_RO_HOST=host.docker.internal - DATABASE_PORT=5432 - DATABASE_USER=dbuser1 - DATABASE_PASSWORD=eksgdbdemo - DATABASE_DB_NAME=eksgdbdemo - DATABASE_RODB_NAME=eksgdbdemo - PRODUCTS_SERVICE=http://host.docker.internal:8444 - USER_SERVICE=http://host.docker.internal:8446 - ORDER_SERVICE=http://host.docker.internal:8448 - KART_SERVICE=http://host.docker.internal:8445 product: depends_on: - postgresql build: context: ./product dockerfile: Dockerfile image: product:1.0 ports: - 8444:8444 environment: - DATABASE_HOST=host.docker.internal - DATABASE_RO_HOST=host.docker.internal - DATABASE_PORT=5432 - DATABASE_USER=dbuser1 - DATABASE_PASSWORD=eksgdbdemo - DATABASE_DB_NAME=eksgdbdemo - DATABASE_RODB_NAME=eksgdbdemo user: depends_on: - postgresql build: context: ./user dockerfile: Dockerfile image: user:1.0 ports: - 8446:8446 environment: - DATABASE_HOST=host.docker.internal - DATABASE_RO_HOST=host.docker.internal - DATABASE_PORT=5432 - DATABASE_USER=dbuser1 - DATABASE_PASSWORD=eksgdbdemo - DATABASE_DB_NAME=eksgdbdemo - DATABASE_RODB_NAME=eksgdbdemo order: depends_on: - postgresql build: context: ./order dockerfile: Dockerfile image: order:1.0 ports: - 8448:8448 environment: - DATABASE_HOST=host.docker.internal - DATABASE_RO_HOST=host.docker.internal - DATABASE_PORT=5432 - DATABASE_USER=dbuser1 - DATABASE_PASSWORD=eksgdbdemo - DATABASE_DB_NAME=eksgdbdemo kart: depends_on: - postgresql build: context: ./kart dockerfile: Dockerfile image: kart:1.0 ports: - 8445:8445 environment: - DATABASE_HOST=host.docker.internal - DATABASE_RO_HOST=host.docker.internal - DATABASE_PORT=5432 - DATABASE_USER=dbuser1 - DATABASE_PASSWORD=eksgdbdemo - DATABASE_DB_NAME=eksgdbdemo - DATABASE_RODB_NAME=eksgdbdemo