Docker images for NaiveProxy with multi-architecture support (x86_64 and ARM64).
| Image | Description |
|---|---|
rwecho/naiveproxy |
NaiveProxy 客户端 |
rwecho/caddy-forwardproxy |
Caddy + forward_proxy (服务端) |
- 🏗️ Multi-architecture support (linux/amd64, linux/arm64)
- 📦 Based on Debian slim (glibc native support)
- 🔄 Daily automatic builds for new versions
- 🔒 Runs as non-root user for security
- ⚡ Multi-stage build for optimized image size
docker pull rwecho/naiveproxy:latestCreate config file:
mkdir -p ~/naive-config
cat > ~/naive-config/config.json <<'EOF'
{
"listen": "socks://0.0.0.0:1080",
"proxy": "https://user:password@your-server.com:443"
}
EOF
Run client:
```bash
docker run -d \
--name naiveproxy \
--restart unless-stopped \
-v ~/naive-config:/etc/naive \
-p 1080:1080 \
rwecho/naiveproxy:latestdocker pull rwecho/caddy-forwardproxy:latestCreate directories:
mkdir -p ~/naive-server/{caddy,html}Create Caddyfile (~/naive-server/caddy/Caddyfile):
your-domain.com {
tls your-email@example.com
route {
forward_proxy {
basic_auth your_user your_password
hide_headers
}
file_server {
root /var/www/html
}
}
}
Create a simple HTML page (~/naive-server/html/index.html):
<!DOCTYPE html>
<html>
<head><title>Welcome</title></head>
<body><h1>Welcome!</h1></body>
</html>Run server:
docker run -d \
--name caddy \
--restart unless-stopped \
-v ~/naive-server/caddy:/etc/caddy \
-v ~/naive-server/html:/var/www/html \
-p 80:80 \
-p 443:443 \
rwecho/caddy-forwardproxy:latestversion: '3.8'
services:
caddy:
image: rwecho/caddy-forwardproxy:latest
container_name: caddy
restart: unless-stopped
ports:
- "80:80"
- "443:443"
volumes:
- ./caddy:/etc/caddy
- ./html:/var/www/html{
"listen": "socks://0.0.0.0:1080",
"proxy": "https://user:password@your-server:443"
}For more configuration options, see NaiveProxy documentation.
your-domain.com {
tls your-email@example.com
route {
forward_proxy {
basic_auth your_user your_password
hide_headers
}
file_server {
root /var/www/html
}
}
}
| Variable | Default | Description |
|---|---|---|
CONFIG_PATH |
/etc/naive/config.json |
Path to config file |
latest- Latest stable versionVERSION- Specific version (e.g.,143.0.7499.109-2)
This project uses GitHub Actions for:
- Daily version check - Automatically checks for new NaiveProxy releases
- Multi-arch build - Builds for amd64 and arm64 platforms
- Auto push - Pushes to Docker Hub when new versions are available
Set these secrets in your GitHub repository:
DOCKERHUB_USERNAME- Your Docker Hub usernameDOCKERHUB_TOKEN- Your Docker Hub access token
You can also trigger a manual build with a specific version:
- Go to Actions → Build and Push NaiveProxy Docker Image
- Click "Run workflow"
- Enter the version (optional)
- Check "build_server" to also build the server image
- Click "Run workflow"
# Build client
docker build -t naiveproxy:local .
# Build server
docker build -f Dockerfile.server -t caddy-forwardproxy:local .This project is licensed under the MIT License. NaiveProxy is licensed under its own terms.
- NaiveProxy - Original project