opengis/docker-compose.yml
Flook c57efd576c
Some checks reported errors
continuous-integration/drone/push Build encountered an error
Initial commit of crud_app
2025-04-15 07:15:12 +07:00

84 lines
2.0 KiB
YAML

services:
postgres:
container_name: ms_pg_sql
build: .
environment:
POSTGRES_USER: admin
POSTGRES_PASSWORD: 123
PGDATA: /var/lib/postgresql/data
POSTGRES_DB: employee_service
volumes:
- postgres:/var/lib/postgresql/data
ports:
- 5432:5432
networks:
- microservice-net
restart: unless-stopped
pgadmin:
container_name: ms_pgadmin
image: dpage/pgadmin4
environment:
PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-pgadmin@pgadmin.org}
PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin}
PGADMIN_CONFIG_SERVER_MODE: 'False'
volumes:
- pgadmin:/var/lib/pgadmin
ports:
- 8180:80
networks:
- microservice-net
restart: unless-stopped
employee-service:
build:
context: ./employee-service
dockerfile: Dockerfile
container_name: ms_employee_service
environment:
SPRING_DATASOURCE_URL: jdbc:postgresql://ms_pg_sql:5432/employee_service
SPRING_DATASOURCE_USERNAME: admin
SPRING_DATASOURCE_PASSWORD: 123
ports:
- "8080:8080"
depends_on:
- postgres
networks:
- microservice-net
restart: unless-stopped
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
container_name: ms_frontend
ports:
- "80" # ตรงนี้แม้จะดูเหมือนจะ conflict กับ web แต่ใช้ network ภายใน (ไม่ต้องแมพพอร์ต)
depends_on:
- employee-service
networks:
- microservice-net
restart: unless-stopped
web:
build:
context: ./nginx
dockerfile: Dockerfile
container_name: ms_web
ports:
- "80:80" # แมพพอร์ตให้ใช้งานจากนอก container ได้
depends_on:
- frontend
- employee-service
networks:
- microservice-net
restart: unless-stopped
networks:
microservice-net:
driver: bridge
volumes:
postgres:
pgadmin: