Files
docs/deployments/services/Media and Gaming/Emulatorjs.md
Nicole Rappe 51cdd1fdb6
All checks were successful
Automatic Documentation Deployment / Sync Docs to https://kb.bunny-lab.io (push) Successful in 5s
Fixed Formatting of Files
2026-02-27 04:09:43 -07:00

1.4 KiB

tags
tags
EmulatorJS
Media
Gaming
Docker

Purpose: Emulatorjs is a browser web based emulation portable to nearly any device for many retro consoles. A mix of emulators is used between Libretro and EmulatorJS.

Docker Configuration

---
services:
  emulatorjs:
    image: lscr.io/linuxserver/emulatorjs:latest
    container_name: emulatorjs
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/Denver
      - SUBFOLDER=/ #optional
    volumes:
      - /srv/containers/emulatorjs/config:/config
      - /srv/containers/emulatorjs/data:/data
    ports:
      - 3000:3000
      - 80:80
      - 4001:4001 #optional
    restart: unless-stopped
    networks:
        docker_network:
          ipv4_address: 192.168.5.200

networks:
  docker_network:
    external: true
N/A

Traefik Reverse Proxy Configuration

If the container does not run on the same host as Traefik, you will need to manually add configuration to Traefik's dynamic config file, outlined below.

http:
  routers:
    git:
      entryPoints:
        - websecure
      tls:
        certResolver: letsencrypt
      http2:
      service: emulatorjs
      rule: Host(`emulatorjs.bunny-lab.io`)

  services:
    emulatorjs:
      loadBalancer:
        servers:
          - url: http://192.168.5.200:80
        passHostHeader: true

!!! note Port 80 = Frontend Port 3000 = Management Backend