- Create entrypoint.sh to handle SMB mount on container startup - Read credentials from settings.json and mount //172.18.210.5/ame - Bind-mount subdirectories (watch, output, logs) to container paths - Update Dockerfile with cifs-utils and entrypoint script - Update docker-compose.yml with SYS_ADMIN capability for mounting - Add comprehensive SMB configuration section to README - Include troubleshooting guide and alternative approaches - Maintain backward compatibility with local volumes - Never expose passwords to browser (server-side storage only) Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
49 lines
1.4 KiB
YAML
49 lines
1.4 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
ame-job-manager:
|
|
build: .
|
|
container_name: ame-job-manager
|
|
restart: unless-stopped
|
|
ports:
|
|
- "3100:3100"
|
|
environment:
|
|
- PORT=3100
|
|
- AUTH_USER=Admin
|
|
- AUTH_PASS=BertAndErnieVPM2026
|
|
# Container-local mount points (not directly used — entrypoint.sh manages these)
|
|
- WATCH_FOLDER=/watch
|
|
- OUTPUT_FOLDER=/output
|
|
- AME_LOG_DIR=/ame-logs
|
|
- DATA_DIR=/data
|
|
# Polling interval for folder monitoring (ms)
|
|
- POLL_INTERVAL_MS=5000
|
|
# Job timeout before marking as stuck (ms) — default 1 hour
|
|
- JOB_TIMEOUT_MS=3600000
|
|
# S3 config (same creds as framelightx-uploader, encoder bucket)
|
|
- S3_ENDPOINT=https://broadcastmgmt.cloud
|
|
- S3_ACCESS_KEY=c9L2fu581a3gnH7rSdBJ
|
|
- S3_SECRET_KEY=QaJmlogyPCvtO7iSVGw9NAzB8H6FknLqXpYrWRdx
|
|
- S3_BUCKET=encoder
|
|
- S3_REGION=us-east-1
|
|
volumes:
|
|
# Persistent data store (settings, job DB, sessions)
|
|
- app_data:/data
|
|
# Temporary upload storage
|
|
- upload_tmp:/tmp/uploads
|
|
# Local volumes as fallback (used if SMB mount fails)
|
|
- watch_folder:/watch
|
|
- output_folder:/output
|
|
- ame_logs:/ame-logs
|
|
# Required capabilities for SMB mounting
|
|
cap_add:
|
|
- SYS_ADMIN
|
|
security_opt:
|
|
- apparmor=unconfined
|
|
|
|
volumes:
|
|
app_data:
|
|
upload_tmp:
|
|
watch_folder:
|
|
output_folder:
|
|
ame_logs:
|