forked from rommapp/romm
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdocker-compose.example.yml
72 lines (70 loc) · 3.33 KB
/
docker-compose.example.yml
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
61
62
63
64
65
66
67
68
69
70
71
72
version: "3"
volumes:
mysql_data:
services:
romm:
image: zurdi15/romm:latest
container_name: romm
environment:
- ROMM_DB_DRIVER=mariadb # mariadb | sqlite (default: sqlite)
# [Optional] Only required if using MariaDB as the database
- DB_HOST=romm_db
- DB_PORT=3306
- DB_USER=romm-user
- DB_NAME=romm # Should match the MYSQL_DATABASE value in the mariadb container
- DB_PASSWD=<database password>
- IGDB_CLIENT_ID=<IGDB client id>
- IGDB_CLIENT_SECRET=<IGDB client secret>
# [Optional - WIP] Use SteamGridDB as a source for covers
# - STEAMGRIDDB_API_KEY=<SteamGridDB api key>
# [Optional] Will enable user management and require authentication to access the interface (disabled by default)
- ROMM_AUTH_ENABLED=true # default: false
- ROMM_AUTH_SECRET_KEY=<secret key> # Generate a key with `openssl rand -hex 32`
- ROMM_AUTH_USERNAME=admin # default: admin
- ROMM_AUTH_PASSWORD=<admin password> # default: admin
# [Optional] Only required if authentication is enabled
- ENABLE_EXPERIMENTAL_REDIS=true # default: false
- REDIS_HOST=redis # default: localhost
- REDIS_PORT=6379 # default: 6379
- REDIS_PASSWORD=<redis password> # [Optional] Support for secured redis
# [Optional] Will enable asynchronous tasks (all disabled by default)
- ENABLE_RESCAN_ON_FILESYSTEM_CHANGE=true # Runs a quick scan on the library when a file is added or removed
- RESCAN_ON_FILESYSTEM_CHANGE_DELAY=5 # Delay in seconds before running the quick scan (default: 5)
- ENABLE_SCHEDULED_RESCAN=true # Runs a quick scan on the library at a given time
- SCHEDULED_RESCAN_CRON=0 3 * * * # Cron expression for the scheduled scan (default: 0 3 * * * - At 3:00 AM every day)
- ENABLE_SCHEDULED_UPDATE_SWITCH_TITLEDB=true # Updates the Switch TitleDB database at a given time
- SCHEDULED_UPDATE_SWITCH_TITLEDB_CRON=0 4 * * * # Cron expression for the scheduled update (default: 0 4 * * * - At 4:00 AM every day)
- ENABLE_SCHEDULED_UPDATE_MAME_XML=true # Updates the MAME XML database at a given time
- SCHEDULED_UPDATE_MAME_XML_CRON=0 5 * * * # Cron expression for the scheduled update (default: 0 5 * * * - At 5:00 AM every day)
volumes:
- "/path/to/library:/romm/library"
- "/path/to/resources:/romm/resources" # [Optional] Path where roms metadata (covers) are stored
- "/path/to/config.yml:/romm/config.yml" # [Optional] Path where config is stored
- "/path/to/database:/romm/database" # [Optional] Only needed if ROMM_DB_DRIVER=sqlite or not set
- "/path/to/logs:/romm/logs" # [Optional] Path where logs are stored
ports:
- 80:8080
depends_on:
- romm_db
restart: "unless-stopped"
# [Optional] Only required if using MariaDB as the database
romm_db:
image: mariadb:latest
container_name: romm_db
environment:
- MYSQL_ROOT_PASSWORD=<root password>
- MYSQL_DATABASE=romm
- MYSQL_USER=romm-user
- MYSQL_PASSWORD=<database password>
volumes:
- mysql_data:/var/lib/mysql # Can also be mounted locally
ports:
- 3306:3306
restart: "unless-stopped"
# [Optional] Only required if experimental Redis is enabled
redis:
image: redis:alpine
container_name: redis
restart: unless-stopped
ports:
- 6379:6379