You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

90 lines
2.2 KiB

services:
web_client:
container_name: web_client
build:
context: ./client
dockerfile: Dockerfile
ports:
- ${CLIENT_PORT}:5173
restart: always
# redis_db:
# image: "redis:alpine"
# container_name: redis_db
# ports:
# - ${REDIS_PORT}:${REDIS_PORT}
# environment:
# - REDIS_PASSWORD=${REDIS_PASSWORD}
# command: [ "redis-server", "--requirepass", "${REDIS_PASSWORD}" ]
# volumes:
# - ./redis_data:/data
# expose:
# - ${REDIS_PORT}:${REDIS_PORT}
# restart: unless-stopped
ems:
container_name: ems
build:
context: ./ems
dockerfile: Dockerfile
volumes:
- ./ems/public:/app/public
# links:
# - redis_db:redis_db
# - psql_db:psql_db
# depends_on:
# - redis_db
# - psql_db
environment:
- REDIS_PASSWORD=${REDIS_PASSWORD}
- REDIS_HOST=${REDIS_HOST}
- REDIS_PORT=${REDIS_PORT}
- EMS_PORT=${EMS_PORT}
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@psql_db:${POSTGRES_PORT}/${POSTGRES_DB}?schema=public
ports:
- ${EMS_PORT}:${EMS_PORT}
restart: always
postgis_db:
container_name: postgis_db
image: postgis/postgis:17-3.4-alpine
volumes:
- ./postgis_db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
ports:
- ${POSTGRES_PORT}:${POSTGRES_PORT}
expose:
- ${POSTGRES_PORT}
healthcheck:
test:
['CMD-SHELL', 'pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}']
interval: 10s
timeout: 5s
retries: 5
start_period: 10s
restart: always
ems_db:
container_name: ems_db
image: postgres:16.4-alpine
volumes:
- ./ems_db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
ports:
- ${POSTGRES_PORT}:${POSTGRES_PORT}
expose:
- ${POSTGRES_PORT}
healthcheck:
test:
['CMD-SHELL', 'pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}']
interval: 10s
timeout: 5s
retries: 5
start_period: 10s
restart: always