Files
Erupe/docker-compose.yml
Houmgaor 160130e464 refactor(docker): improve Docker setup and reduce image size
- Add multi-stage build to Dockerfile for smaller production image
- Move docker-compose.yml to project root for easier usage
- Flatten docker/init/setup.sh to docker/setup.sh
- Expand .dockerignore to exclude unnecessary files
- Remove deprecated version field from compose files
2026-02-01 23:49:52 +01:00

68 lines
1.6 KiB
YAML

# Root-level docker-compose for easy usage: docker compose up
# For development: docker compose up db pgadmin
# For full stack: docker compose up
services:
db:
image: postgres
environment:
# (Make sure these match config.json)
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=password
- POSTGRES_DB=erupe
ports:
- "5432:5432"
volumes:
- ./docker/db-data/:/var/lib/postgresql/data/
- ./schemas/:/schemas/
- ./docker/setup.sh:/docker-entrypoint-initdb.d/setup.sh
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 5s
timeout: 5s
retries: 5
pgadmin:
image: dpage/pgadmin4
restart: always
environment:
PGADMIN_DEFAULT_EMAIL: user@pgadmin.com
PGADMIN_DEFAULT_PASSWORD: password
ports:
- "5050:80"
depends_on:
db:
condition: service_healthy
server:
depends_on:
db:
condition: service_healthy
build:
context: .
volumes:
- ./config.json:/app/erupe/config.json
- ./bin:/app/erupe/bin
- ./docker/savedata:/app/erupe/savedata
ports:
# (Make sure these match config.json)
- "53312:53312" #Sign V1
- "8080:8080" #Sign V2
- "53310:53310" #Entrance
# Channels
- "54001:54001"
- "54002:54002"
- "54003:54003"
- "54004:54004"
- "54005:54005"
- "54006:54006"
- "54007:54007"
- "54008:54008"
web:
image: httpd:latest
container_name: my-apache-app
ports:
- '80:80'
volumes:
- ./docker/Servers:/usr/local/apache2/htdocs
depends_on:
db:
condition: service_healthy