mirror of
https://github.com/firewalkwithm3/stacks.git
synced 2025-07-02 02:47:49 +08:00
78 lines
2.7 KiB
YAML
78 lines
2.7 KiB
YAML
name: romm
|
|
services:
|
|
romm:
|
|
image: rommapp/romm:latest
|
|
container_name: romm
|
|
depends_on:
|
|
romm_db:
|
|
condition: service_healthy
|
|
restart: true
|
|
volumes:
|
|
- romm_resources:/romm/resources # Resources fetched from IGDB (covers, screenshots, etc.)
|
|
- romm_redis:/redis-data # Cached data for background tasks
|
|
- romm_assets:/romm/assets # Uploaded saves, states, etc.
|
|
- romm_config:/romm/config # Path where config.yml is stored
|
|
- /media/media/romm:/romm/library/roms:ro # Your game library. Check https://github.com/rommapp/romm?tab=readme-ov-file#folder-structure for more details.
|
|
environment:
|
|
- DB_HOST=romm_db
|
|
- DB_NAME=romm # Should match MARIADB_DATABASE in mariadb
|
|
- DB_USER=romm # Should match MARIADB_USER in mariadb
|
|
- DB_PASSWD=${MARIADB_PASSWORD} # Should match MARIADB_PASSWORD in mariadb
|
|
- ROMM_AUTH_SECRET_KEY=${ROMM_AUTH_SECRET_KEY} # Generate a key with `openssl rand -hex 32`
|
|
- OIDC_ENABLED=true
|
|
- OIDC_PROVIDER=authentik
|
|
- OIDC_CLIENT_ID=${OIDC_CLIENT_ID}
|
|
- OIDC_CLIENT_SECRET=${OIDC_CLIENT_SECRET}
|
|
- OIDC_REDIRECT_URI=https://games.fern.garden/api/oauth/openid
|
|
- OIDC_SERVER_APPLICATION_URL=https://auth.fern.garden/application/o/romm/
|
|
- MOBYGAMES_API_KEY=${MOBYGAMES_API_KEY}
|
|
- IGDB_CLIENT_ID=${IGDB_CLIENT_ID} # Generate an ID and SECRET in IGDB
|
|
- IGDB_CLIENT_SECRET=${IGDB_CLIENT_SECRET} # https://api-docs.igdb.com/#account-creation
|
|
- SCREENSCRAPER_USER=mondas # Use your ScreenScraper username and password
|
|
- SCREENSCRAPER_PASSWORD=${SCREENSCRAPER_PASSWORD} # https://docs.romm.app/latest/Getting-Started/Metadata-Providers/#screenscraper
|
|
- STEAMGRIDDB_API_KEY=${STEAMGRIDDB_API_KEY} # https://github.com/rommapp/romm/wiki/Metadata-Providers#steamgriddb
|
|
networks:
|
|
- default
|
|
- proxy
|
|
restart: unless-stopped
|
|
labels:
|
|
caddy: games.fern.garden
|
|
caddy.reverse_proxy: '{{upstreams 8080}}'
|
|
|
|
romm_db:
|
|
image: mariadb:latest
|
|
container_name: romm_db
|
|
volumes:
|
|
- romm_db:/var/lib/mysql
|
|
environment:
|
|
- MARIADB_ROOT_PASSWORD=${MARIADB_ROOT_PASSWORD} # Use a unique, secure password
|
|
- MARIADB_DATABASE=romm
|
|
- MARIADB_USER=romm
|
|
- MARIADB_PASSWORD=${MARIADB_PASSWORD}
|
|
networks:
|
|
- default
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: [ CMD, healthcheck.sh, --connect, --innodb_initialized ]
|
|
start_period: 30s
|
|
start_interval: 10s
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
networks:
|
|
default:
|
|
proxy:
|
|
external: true
|
|
|
|
volumes:
|
|
romm_db:
|
|
name: romm_db
|
|
romm_resources:
|
|
name: romm_resources
|
|
romm_redis:
|
|
name: romm_redis
|
|
romm_assets:
|
|
name: romm_assets
|
|
romm_config:
|
|
name: romm_config
|