Zoraxy is a general purpose HTTP reverse proxy and forwarding tool written in Go. This tutorial will assume that you have a docker system already up and running. If not, please see my page on setting up docker here:

Docker, Docker-Compose and Portainer (/w Watchtower) - Debian 12

For more detailed information on the Docker install, check out their site: Zoraxy Github

Docker Compose File

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
services:
  zoraxy:
    image: zoraxydocker/zoraxy:latest
    container_name: zoraxy
    restart: unless-stopped
    ports:
      - 80:80
      - 443:443
      - 8000:8000 # Management Interface
    volumes:
      - ./config:/opt/zoraxy/config/ #Zoraxy configuration
      # - /path/to/zerotier/config/:/var/lib/zerotier-one/ # ZeroTier configuration. Only required if you wish to use ZeroTier
      - /var/run/docker.sock:/var/run/docker.sock
      - /etc/localtime:/etc/localtime
    environment:
      FASTGEOIP: "true"
      ZEROTIER: "false"
networks: {}

Ports

1
2
3
80 = HTTP traffic.
443 = HTTPS traffic.
8000 = Management interface. Can be changed with the PORT env.

Run docker compose:

1
docker compose up -d

Once you have Zoraxy up and running, you should be able to log in:

http://{server ip address}:8000

You will be asked to setup your username and password.

Zoraxy Setup

Status Page / Global Settings

Advanced Settings

Zoraxy - Global Settings

Let’s Encrypt SSL Certificate Config

Zoraxy - Global Settings