Files
bamort/docker/docker-compose.dev.yml
T
2026-05-02 00:56:11 +02:00

98 lines
2.7 KiB
YAML

name: bamort
services:
backend-dev:
build:
context: ../backend
dockerfile: ../docker/Dockerfile.backend.dev
container_name: bamort-backend-dev
ports:
- "8180:8180"
environment:
- GO_ENV=development
- CGO_ENABLED=1
- DATABASE_TYPE=${DATABASE_TYPE:-mysql}
- DB_HOST=${DB_HOST:-mariadb-dev}
- DB_PORT=${DB_PORT:-3306}
- DB_USER=${DB_USER:-bamort}
- DB_PASSWORD=${DB_PASSWORD:-secure_user_password}
- DB_NAME=${DB_NAME:-bamort}
- API_PORT=${API_PORT:-8180}
- TEMPLATES_DIR=${TEMPLATES_DIR:-./templatesx}
- EXPORT_TEMP_DIR=${EXPORT_TEMP_DIR:-./export_tempx}
- GIT_COMMIT=${GIT_COMMIT:-unknown}
depends_on:
mariadb-dev:
condition: service_healthy
working_dir: /app
# Restart if Go code changes cause crash
restart: unless-stopped
volumes:
- ../backend:/app
- go-mod-cache:/go/pkg/mod
frontend-dev:
build:
context: ../frontend
dockerfile: ../docker/Dockerfile.frontend.dev
container_name: bamort-frontend-dev
ports:
- "5173:5173" # Vite dev server port
environment:
- NODE_ENV=development
- VITE_API_URL=${API_URL:-http://192.168.0.1:8180}
- VITE_BASE_URL=${BASE_URL:-http://bamort.trokan.de}
- VITE_API_PORT=${API_PORT:-8180}
depends_on:
- backend-dev
restart: unless-stopped
volumes:
- ../frontend:/app
- /app/node_modules # Prevent overwriting node_modules
mariadb-dev:
image: mariadb:11.4
container_name: bamort-mariadb-dev
restart: unless-stopped
ports:
- "3306:3306"
environment:
MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD:-secure_root_password}
MARIADB_DATABASE: ${DB_NAME:-bamort}
MARIADB_USER: ${DB_USER:-bamort}
MARIADB_PASSWORD: ${DB_PASSWORD:-secure_user_password}
MARIADB_CHARSET: utf8mb4
MARIADB_COLLATION: utf8mb4_unicode_ci
volumes:
- ./bamort-db-dev:/var/lib/mysql
- ./init-db:/docker-entrypoint-initdb.d
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
start_period: 10s
timeout: 5s
retries: 3
phpmyadmin-dev:
image: phpmyadmin/phpmyadmin:5.2
container_name: bamort-phpmyadmin-dev
restart: unless-stopped
ports:
- "8081:80"
environment:
PMA_HOST: ${DB_HOST:-mariadb-dev}
PMA_PORT: ${DB_PORT:-3306}
PMA_USER: root
PMA_PASSWORD: ${DB_ROOT_PASSWORD:-secure_root_password}
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD:-secure_root_password}
PMA_ARBITRARY: 1
depends_on:
mariadb-dev:
condition: service_healthy
volumes:
go-mod-cache:
networks:
default:
name: bamort_default