Files
ERP/pm/docker-compose.yml
T

59 lines
1.8 KiB
YAML

services:
pm-api:
build:
context: ./backend
dockerfile: Dockerfile
container_name: pm-api
environment:
PM_DATABASE_URL: postgresql+asyncpg://postgres:postgres@procurement-postgres:5432/procurement
PM_SESSION_SECRET: ${PM_SESSION_SECRET:-12278fc281bd0e22950e76364e1a18cea61fbc6a24604fdd79690a817ec36ac8}
PM_ADMIN_USER: ${PM_ADMIN_USER:-admin}
PM_ADMIN_PASSWORD: ${PM_ADMIN_PASSWORD:-pm123456}
PM_FILES_DIR: /data/files
PM_DEV_ROLE_SWITCH: ${PM_DEV_ROLE_SWITCH:-false}
PM_ERP_BASE_URL: http://procurement-api:8000
PM_ERP_CASDOOR_ENDPOINT: http://casdoor:8000
PM_ERP_CASDOOR_CLIENT_ID: ${PM_ERP_CASDOOR_CLIENT_ID:-inventory-app-client}
PM_ERP_CASDOOR_CLIENT_SECRET: ${PM_ERP_CASDOOR_CLIENT_SECRET:-inventory-app-secret-2026}
PM_ERP_SERVICE_USERNAME: ${PM_ERP_SERVICE_USERNAME:-pm-service}
PM_ERP_SERVICE_PASSWORD: ${PM_ERP_SERVICE_PASSWORD:-pm-service-2026}
PM_CASDOOR_ISSUER: ${PM_CASDOOR_ISSUER:-http://localhost:8080}
volumes:
- pm_files:/data/files
- ./backend/app:/srv/pm/app
networks:
- default
- erp_network
restart: unless-stopped
pm-frontend:
build:
context: ./frontend
dockerfile: Dockerfile
container_name: pm-frontend
ports:
- "8083:80"
depends_on:
- pm-api
labels:
- "traefik.enable=true"
- "traefik.http.routers.pm.rule=PathPrefix(`/pm`)"
- "traefik.http.routers.pm.entrypoints=web"
- "traefik.http.routers.pm.priority=100"
- "traefik.http.services.pm.loadbalancer.server.port=80"
networks:
- default
- traefik_network
restart: unless-stopped
volumes:
pm_files:
networks:
default:
name: pm_default
erp_network:
name: all-together_default
external: true
traefik_network:
external: true