« ROMM » : différence entre les versions

De Le Wiki de Lug
Aller à la navigation Aller à la recherche
Page créée avec « = Prérequis = * Alpine LXC avec Nesting et keyctl activé (Docker). Ressource confortable : * 2 CPU * 2Gb de RAM * 16GB de Disque Il est recommandé d'organiser les fichiers de la façon suivante : /roms/{platform}/ /bios/{platform}/ Il est également recommandé d'utiliser des noms de dossier reconnu par ROMM, exemple : roms/ nes snes n64 gb gbc gba megadrive segacd 32x neogeo ngp pcengine pcenginecd wonderswan wo... »
 
Aucun résumé des modifications
Ligne 8 : Ligne 8 :
  /roms/{platform}/
  /roms/{platform}/
  /bios/{platform}/
  /bios/{platform}/
Il est également recommandé d'utiliser des noms de dossier reconnu par ROMM, exemple :
Il est également nécessaire d'utiliser des noms de dossier reconnu par ROMM, exemple :
  roms/
  roms/
   nes
   nes
Ligne 16 : Ligne 16 :
   gbc
   gbc
   gba
   gba
   megadrive
   genesis
   segacd
   segacd
   32x
   sega32
   neogeo
   neogeomvs
   ngp
   neo-geo-pocket
   pcengine
   tg16
   pcenginecd
   pcenginecd
   wonderswan
   wonderswan
   wonderswancolor
   wonderswan-color
= Installation =
= Installation =
  # apk update && apk upgrade
  # apk update && apk upgrade

Version du 4 mars 2026 à 20:07

Prérequis

  • Alpine LXC avec Nesting et keyctl activé (Docker).

Ressource confortable :

  • 2 CPU
  • 2Gb de RAM
  • 16GB de Disque

Il est recommandé d'organiser les fichiers de la façon suivante :

/roms/{platform}/
/bios/{platform}/

Il est également nécessaire d'utiliser des noms de dossier reconnu par ROMM, exemple :

roms/
  nes
  snes
  n64
  gb
  gbc
  gba
  genesis
  segacd
  sega32
  neogeomvs
  neo-geo-pocket
  tg16
  pcenginecd
  wonderswan
  wonderswan-color

Installation

# apk update && apk upgrade
# apk add docker docker-cli-compose
# rc-update add docker default
# rc-service docker start
# mkdir -p /opt/romm /opt/romm/config /opt/romm/data /opt/romm/assets
# cd /opt/romm

Fichier de configuration du conteneur :

# vi docker-compose.yml
version: "3.8"

volumes:
  mysql_data:
  romm_resources:
  romm_redis_data:

services:
  romm:
    image: ghcr.io/rommapp/romm:latest
    container_name: romm
    restart: unless-stopped
    environment:
      - TZ=Europe/Madrid

      # Database (MariaDB)
      - DB_HOST=romm-db
      - DB_NAME=romm
      - DB_USER=romm-user
      - DB_PASSWD=CHANGE_MOI_ROMM_MARIADB_PASSWORD # mot de passe de "romm-user", identique plus bas!!

      # Required auth secret (IMPORTANT)
      - ROMM_AUTH_SECRET_KEY=CHANGE_MOI_AUTH_SECRET_KEY

      # Metadata providers (optionnel mais recommandé)
      # - SCREENSCRAPER_USER=ton_user
      # - SCREENSCRAPER_PASSWORD=ton_mdp
      # - RETROACHIEVEMENTS_API_KEY=ta_cle
      # - STEAMGRIDDB_API_KEY=ta_cle
      - HASHEOUS_API_ENABLED=true

    volumes:
      # Cache / ressources / jobs
      - romm_resources:/romm/resources
      - romm_redis_data:/redis-data

      # Ta bibliothèque ROM (lecture seule)
      - /mnt/Emulation/roms:/romm/library/roms:ro
      - /mnt/Emulation/bios:/romm/library/bios:ro

      # Assets RomM (écriture)
      - /opt/romm/assets:/romm/assets

      # Config (config.yml)
      - /opt/romm/config:/romm/config:ro

    ports:
      - "8080:8080"

    depends_on:
      romm-db:
        condition: service_healthy

  romm-db:
    image: mariadb:11
    container_name: romm-db
    restart: unless-stopped
    environment:
      - MARIADB_ROOT_PASSWORD=CHANGE_MOI_ROOT_PASSWORD
      - MARIADB_DATABASE=romm
      - MARIADB_USER=romm-user
      - MARIADB_PASSWORD=CHANGE_MOI_ROMM_MARIADB_PASSWORD  # mot de passe de "romm-user", identique plus haut!!
    volumes:
      - mysql_data:/var/lib/mysql
    healthcheck:
      test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
      start_period: 30s
      interval: 10s
      timeout: 5s
      retries: 10
# vi /opt/romm/config/config.yml
filesystem:
  roms: /romm/library/roms
  bios: /romm/library/bios

scan:
  priority:
    metadata:
      - "ss"
      - "igdb"
      - "moby"

    artwork:
      - "ss"
      - "igdb"
      - "moby"

    region:
      - "eu"
      - "us"
      - "jp"

    language:
      - "fr"
      - "en"
      - "es"

  media:
    - box2d
    - screenshot
    - marquee
    - fanart
    - manual
    - title_screen
    - bezel

emulatorjs:
  debug: false
  cache_limit: null
  disable_batch_bootup: false
  disable_auto_unload: false

  netplay:
    enabled: true
    ice_servers:
      - urls: "stun:stun.l.google.com:19302"
      - urls: "stun:stun1.l.google.com:19302"
      - urls: "stun:stun2.l.google.com:19302"
      - urls: "turn:openrelay.metered.ca:80"
        username: "openrelayproject"
        credential: "openrelayproject"
      - urls: "turn:openrelay.metered.ca:443"
        username: "openrelayproject"
        credential: "openrelayproject"
# docker compose up -d