ghcr.io/euzu/tuliprox-alpine:latest
Quick start with Docker Compose
1
Create a docker-compose.yml
Create a
docker-compose.yml file in your working directory:docker-compose.yml
2
Start the container
3
Open the Web UI
Navigate to
http://localhost:8901 in your browser and complete the initial configuration.Volume mounts
Environment variables
Port mapping
tuliprox listens on port8901 by default. The compose snippet "8901:8901" publishes it on the same host port.
Restart policies
Userestart: unless-stopped for most setups. For tighter control, use restart: on-failure.
Healthcheck
tuliprox supports a built-in healthcheck command:Running with docker run
For a quick test without Compose:Building the image from source
To build a local image from the repository root:RUST_TARGET values: x86_64-unknown-linux-musl, aarch64-unknown-linux-musl, armv7-unknown-linux-musleabihf.
After building, update your compose file to reference your local image:
Container templates
The repository ships ready-to-use Docker Compose templates for common production stacks underdocker/container-templates/.
Setting up the full stack
1
Create shared Docker networks
2
Start Traefik
.env to set TZ, TRAEFIK_DASHBOARD_CREDENTIALS, CF_API_EMAIL, and CF_DNS_API_TOKEN_FILE. Then start:3
Start Gluetun (optional VPN egress)
Edit
container-templates/gluetun/gluetun-02/.env.wg-02 with your WireGuard credentials, then:4
Start tuliprox
5
Start CrowdSec (optional)