Migrating from a per-emulator broker
Moving from the deprecated per-emulator broker mods to a single romm-broker container.
If you're running one of the per-emulator broker mods
(pcsx2-romm-integration, dolphin-romm-integration,
xemu-romm-integration, rpcs3-romm-integration, eden-romm-integration),
those are deprecated. This broker replaces all of
them. It runs inside a single
docker-webstation
container and handles every platform itself, instead of you running a
separate container per emulator.
In RomM's config.yml, each per-emulator container had its own platform:
key. A single protocol: webstation container can replace any number of
those, using a platforms: map instead:
# before: one container per platform
streaming:
enabled: true
containers:
- platform: ps2
host: https://192.168.1.51:3001
broker_host: http://192.168.1.51:8000
label: PCSX2
memory_card_sync: true
- platform: ngc
host: https://192.168.1.52:3001
broker_host: http://192.168.1.52:8000
label: Dolphin
# after: one webstation container serving both
streaming:
enabled: true
containers:
- host: https://romm.DOMAIN.com/streaming
broker_host: http://192.168.1.51:3010
protocol: webstation
subfolder: /streaming
label: Emulation station
platforms:
ps2:
emulator: pcsx2
label: PCSX2
memory_card_sync: true
ngc:
emulator: dolphin
label: DolphinThe subfolder value here should match this broker's own SUBFOLDER
environment variable (see Broker settings). There is
no path setting because the container mounts the library at /romm/library,
the same as RomM. If yours can't, see Mounting the library somewhere
else.
Set up docker-webstation with this broker installed. If your old
per-emulator containers mounted the library at a path other than
/romm/library, keep that path and set library_path to it, so your save
and state history (which is tied to that path) doesn't reset. Make sure
streaming works for each platform, then remove the old containers. See
RomM's migration guide for the full walkthrough:
https://docs.romm.app/latest/using/emulator-streaming-migration/
Reverse proxy
Serving the container from a subfolder of RomM's origin, with recipes for nginx, Nginx Proxy Manager, Caddy and Traefik.
Troubleshooting
Symptom-first fixes for the failures that come up wiring a container behind a reverse proxy: cross-origin breakage, broker secret mismatches, dead-on-load rooms, and stale sessions.