Classic retro snake arcade game with multi-language support, global leaderboards, and custom themes written in Rust.
Run the official zero-dependency container on port 4504:
docker run -d --name snake -p 4504:4504 -v /mnt/user/appdata/snake:/config ghcr.io/studio2201/snake:latestOpen your browser to http://localhost:4504 to start slithering immediately.
On Debian, Ubuntu, Fedora, or RHEL:
curl -fsSL https://studio2201.github.io/packages/install.sh | sudo bashDeploy via the official Unraid Template:
- Copy
snake.xmlto your Unraid flash drive under/boot/config/plugins/dockerMan/templates-user/. - Open Docker -> Add Container -> Select snake from the template dropdown.
- Click Apply.
The backend service can be customized using the following environment variables:
| Variable | Description | Default |
|---|---|---|
PORT |
Network port the web server binds to | 4504 |
SNAKE_PIN |
Security PIN required for application access | (Disabled) |
SNAKE_DATA_DIR |
Directory path for persistent data and high scores | /config |
SNAKE_ALLOWED_ORIGINS |
CORS allowed origins list (comma-separated) | * |
TRUST_PROXY |
Honor reverse proxy headers (X-Forwarded-For) |
false |
TRUSTED_PROXY_IPS |
Comma-separated CIDR list of trusted reverse proxies | (None) |
LOG_LEVEL |
Tracing filter (error, warn, info, debug) |
info |
Every container and package includes a built-in administration utility (snake).
Launch interactive TUI dashboard:
docker exec -it snake snake tuiSystem diagnostics and self-healing check:
docker exec -it snake snake doctorCLI Command Reference:
snake tui— Interactive terminal user interface.snake doctor— Diagnoses storage permissions, ports, and database health.snake status— Displays network configuration and security parameters.snake data stats— Shows storage utilization and leaderboard metrics.
- Axum Web Backend: High-concurrency async HTTP runtime built on Tokio.
- Yew WebAssembly Frontend: Type-safe client bundle running natively in browser WASM runtime.
- Strict Input & Path Sanitization: Path canonicalization guards preventing directory traversal escapes.
- Fail-Closed Security PIN Authentication: Rate-limited brute force protection with automatic lockout timers.
Distributed under the Apache 2.0 License. See LICENSE for details.