Skip to content

Quickstart

Terminal window
docker run -d --name proxium -p 80:80 -p 8080:8080 -v proxium:/var/lib/proxium \
-e SUPERUSER_CREATE=true -e [email protected] -e SUPERUSER_PASSWORD=change-me \
ikoldakov/proxium
  1. Open the admin UI at http://localhost and log in.
  2. Add an account under Proxy accounts → Basic, copy its password: it’s shown once.
  3. Use it:
Terminal window
curl -x http://username:password@localhost:8080 https://ifconfig.me
curl -x socks5h://username:password@localhost:8080 https://ifconfig.me

One image runs the proxy, the API, the admin UI and PostgreSQL, for amd64 and arm64. Own certificates, own database, separate containers and running from source: see Installation.

The admin UI and the proxy each get their own domain and certificate, e.g. admin.example.com and proxy.example.com, on one server or on different ones. Recreate the container, the volume keeps the data:

Terminal window
docker rm -f proxium
docker run -d --name proxium -p 80:80 -p 443:443 -p 8080:8080 -v proxium:/var/lib/proxium \
-e ADMIN_HOST=admin.example.com -e ADMIN_TLS=auto \
ikoldakov/proxium

Point both domains to the server with DNS A or AAAA records. The admin UI gets a Let’s Encrypt certificate on start. Add a certificate for proxy.example.com in the admin UI under TLS certificates, then clients connect over TLS:

Terminal window
curl -x https://username:[email protected]:8080 https://ifconfig.me

More on this: HTTPS for the admin UI and TLS.