Regalamiunsorriso/local-jsp-docker/docker-compose.yml
MaddoScientisto dd7d4c865b
All checks were successful
Publish FaceAI Container / publish (push) Successful in 6m52s
Enhance Docker and PowerShell scripts for improved functionality and maintainability
- Updated Dockerfile to include default MySQL client for better database interaction.
- Modified entrypoint.sh to support additional workspace for legacy applications and added MySQL readiness check before startup.
- Enhanced PowerShell script for trimming MySQL dumps to include overlay dumps and improved error handling for missing race and user IDs.
- Added new image files and face encoding pickles for various projects, ensuring comprehensive data availability.
- Removed outdated face encoding pickle from PISA directory to maintain data relevance.

Co-authored-by: Copilot <copilot@github.com>
2026-04-22 22:45:44 +02:00

96 lines
3.3 KiB
YAML

services:
tomcat-www:
build:
context: .
dockerfile: tomcat/Dockerfile
container_name: regalami-local-jsp-tomcat
restart: unless-stopped
environment:
LOCAL_DB_HOST: mysql
LOCAL_DB_PORT: 3306
LOCAL_DB_NAME: pg
LOCAL_DB_USER: root
LOCAL_DB_PASSWORD: root
FACEAI_HANDOFF_URL: ${FACEAI_HANDOFF_URL:-http://localhost:8081/faceai_handoff.php}
FACEAI_DEV_USER_ID: ${FACEAI_DEV_USER_ID:-1}
FACEAI_DEV_DISPLAY_NAME: ${FACEAI_DEV_DISPLAY_NAME:-Local Model User}
FACEAI_DEV_EMAIL: ${FACEAI_DEV_EMAIL:-local.model.user@example.invalid}
FACEAI_DEV_MEMBERSHIP_STATUS: ${FACEAI_DEV_MEMBERSHIP_STATUS:-active}
LOCAL_APP_INSTANCE: ${LOCAL_APP_INSTANCE:-main}
LOCAL_DOCBASE: /data/docbase/
FACEAI_FEATURE_ENABLED: ${FACEAI_FEATURE_ENABLED:-1}
FACEAI_FRONTEND_URL: ${FACEAI_FRONTEND_URL:-http://localhost:3001}
FACEAI_BACKEND_INTERNAL_URL: ${FACEAI_BACKEND_INTERNAL_URL:-http://host.docker.internal:3001}
FACEAI_SHARED_SECRET: ${FACEAI_SHARED_SECRET:-change-me}
FACEAI_ALLOW_DEV_HANDOFF: ${FACEAI_ALLOW_DEV_HANDOFF:-1}
FACEAI_IDENTITY_COOKIE: ${FACEAI_IDENTITY_COOKIE:-rus_faceai_identity}
volumes:
- ../www:/workspace/www:ro
- ../rus:/workspace/rus:ro
- ../test_pkl:/workspace/test_pkl:ro
- ./runtime/docbase:/data/docbase
- ./runtime/tomcat-work:/usr/local/tomcat/work
- ./runtime/tomcat-logs:/usr/local/tomcat/logs
ports:
- "8080:8080"
depends_on:
mysql:
condition: service_healthy
maildump:
condition: service_started
mysql:
image: mysql:8.4
container_name: regalami-local-jsp-mysql
restart: unless-stopped
command:
- --max_allowed_packet=1G
- --net_read_timeout=600
- --net_write_timeout=600
- --lower_case_table_names=1
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: pg
MYSQL_ROOT_HOST: '%'
LOCAL_DB_SEED_DUMP: ${LOCAL_DB_SEED_DUMP:-pg-local-purpose-seed-20260422.sql}
LOCAL_DB_OVERLAY_DUMP: ${LOCAL_DB_OVERLAY_DUMP:-}
LOCAL_DOCBASE: /data/docbase/
LOCAL_MAIL_SMTP_HOST: maildump
LOCAL_MAIL_SMTP_PORT: 1025
LOCAL_SOURCE_DIR: /workspace/www/
LOCAL_TEST_USER_ID: ${LOCAL_TEST_USER_ID:-2}
LOCAL_TEST_USER_LOGIN: ${LOCAL_TEST_USER_LOGIN:-test}
LOCAL_TEST_USER_PASSWORD: ${LOCAL_TEST_USER_PASSWORD:-test1}
LOCAL_TEST_USER_EMAIL: ${LOCAL_TEST_USER_EMAIL:-localtest@regalamiunsorriso.test}
volumes:
- mysql-data:/var/lib/mysql
- ../db:/seed:ro
- ../www:/workspace/www:ro
- ./mysql/init:/docker-entrypoint-initdb.d:ro
healthcheck:
test:
- CMD
- sh
- -lc
- mysql -uroot -p"$$MYSQL_ROOT_PASSWORD" -Nse "SELECT CASE WHEN EXISTS (SELECT 1 FROM pg.parm WHERE codice = 'REWRITE_URL_ENABLE' AND numero = 1) AND EXISTS (SELECT 1 FROM pg.gara LIMIT 1) THEN 1 ELSE 0 END" | grep -qx 1
interval: 10s
timeout: 5s
retries: 30
start_period: 60s
maildump:
build:
context: .
dockerfile: maildump/Dockerfile
container_name: regalami-local-jsp-maildump
restart: unless-stopped
environment:
MAILDUMP_OUTPUT_DIR: /out
MAILDUMP_SMTP_PORT: 1025
volumes:
- ./runtime/maildump/out:/out
ports:
- "8025:8025"
volumes:
mysql-data: