-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.example.yml
More file actions
60 lines (53 loc) · 2.52 KB
/
Copy pathdocker-compose.example.yml
File metadata and controls
60 lines (53 loc) · 2.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# =============================================================
# docker-compose.example.yml — Server deployment template
#
# USAGE:
# 1. Copy this file to the server machine (e.g. C:\LeatherMatch\).
# 2. Rename it to docker-compose.yml.
# 3. Create an empty data\ folder next to the compose file.
# 4. Adjust the Leather_Images volume path to match the actual
# location on that machine (drive letter may differ).
# 5. Run: docker compose up -d
#
# The application will be available at http://SUNUCU_IP:8080
# =============================================================
services:
leathermatch:
image: leathermatch-ai:latest
container_name: leathermatch-ai
ports:
# LAN access: http://SUNUCU_IP:8080
# Change the host port (left side) if 8080 is already in use.
- "8080:8080"
environment:
# Spring profile
- SPRING_PROFILES_ACTIVE=docker
# ========================================
# SECURITY CONFIGURATION (REQUIRED)
# ========================================
# IMPORTANT: Replace the placeholder passwords below with strong passwords!
# - Passwords must be at least 12 characters
# - Do NOT use weak passwords like "changeme123", "operator123", "password", etc.
# - Application will NOT start if passwords are weak (fail-fast security)
# Admin credentials (full access to /api/admin/** and /api/match)
- ADMIN_USERNAME=admin
- ADMIN_PASSWORD=CHANGE_ME_TO_STRONG_PASSWORD_12_CHARS_MIN
# Operator credentials (limited access to /api/match only)
- OPERATOR_USERNAME=operator
- OPERATOR_PASSWORD=CHANGE_ME_TO_STRONG_PASSWORD_12_CHARS_MIN
# CORS allowed origins (comma-separated, exact match required)
# Replace SERVER_IP with your actual LAN IP address (e.g., 192.168.1.100)
# For multiple origins: http://192.168.1.100:8080,http://192.168.1.101:3000
- CORS_ALLOWED_ORIGINS=http://SERVER_IP:8080
# SSL/TLS configuration (set to true if using HTTPS)
# For HTTP-only LAN deployments, leave as false (default)
- SSL_ENABLED=false
volumes:
# data/ sits next to this compose file on the host.
# Contains: logs.db, pattern_database.json, feedback_images/
- ./data:/app/data
# Reference images on an external or local disk.
# *** Change D:/LeatherMatchData/Leather_Images to the actual
# path on THIS machine before running. ***
- D:/LeatherMatchData/Leather_Images:/app/Leather_Images
restart: unless-stopped