quakejs

quakejs

Docker app from A75G's Repository

Overview

QuakeJS is a port of ioquake3 to JavaScript with the help of Emscripten.
IMPORTANT Use Custom:br0 https://youtu.be/2VnQxxn00jU?t=121 put Fixed IP address, then copy the ip and access it using you broswer
[span style='color: #ff9900;']DON'T USE BRIDGE I'M NOT RESPONSABLE FOR Unraid CONFLICTING WITH PORT 80 FOR THIS DOCKER

logo

quakejs-docker

Docker Image CI

Fully local and Dockerized QuakeJS server. This project bundles assets and server binaries so gameplay does not depend on content.quakejs.com.

Quick Start (Docker Compose)

From the repository root:

docker compose up --build -d

Then open:

http://localhost:8080

To stop:

docker compose down

Quick Start (Docker Run)

Build locally:

docker build -t treyyoder/quakejs:latest .

Run:

docker run -d --name quakejs -e HTTP_PORT=8080 -p 8080:80 -p 27960:27960 treyyoder/quakejs:latest

Configuration

Non-Docker Testing

You can run this project without Docker by reproducing the container steps:

  1. Clone https://github.com/nerosketch/quakejs and run npm install.
  2. Copy server.cfg into both quakejs/base/baseq3/server.cfg and quakejs/base/cpma/server.cfg.
  3. Copy include/ioq3ded/ioq3ded.fixed.js to quakejs/build/ioq3ded.js.
  4. Copy include/assets into quakejs/html/assets.
  5. Update quakejs/html/index.html host/port in the same way entrypoint.sh does.
  6. Serve quakejs/html on your desired HTTP port and run:
node build/ioq3ded.js +set fs_cdn localhost:8080 +set fs_game baseq3 +set dedicated 1 +exec server.cfg

Notes

  • This repo targets current Docker Compose syntax (no compose file version key).
  • The container installs Node 22 by default (configurable via Docker build argument NODE_MAJOR).
  • Port 27960 is TCP because QuakeJS browser clients connect to the game server over WebSockets.

Credits

Thanks to begleysm and their QuakeJS fork/documentation:

Install Quakejs on Unraid in a few clicks.

Find Quakejs in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Quakejs Review the template variables and paths Click Install

Categories

Download Statistics

1,169,644
Total Downloads
2,069
This Month
1,613
Avg / Month

Total Downloads Over Time

Loading chart...

Related apps

Explore more like this

Explore all

Details

Repository
treyyoder/quakejs:latest
Last Updated2022-08-30
First Seen2020-05-03

Runtime arguments

Web UI
http://[IP]:[PORT:80]/
Network
br0
Shell
sh
Privileged
false

Template configuration

HTTPVariable

HTTP

Target
80
Default
80
Value
80
Game PortPorttcp

Game Port

Target
27960
Default
27960
Value
27960
SERVERVariable

Put your Fixed IP address Here

Default
192.168.0.266
Value
192.168.0.266
HTTP_PORTVariable

HTTP_PORT

Default
80
Value
80