基于开源项目 windtf/wireproxy 构建的轻量级多架构 Docker 镜像。
WireProxy 是一个完全运行在用户空间的 WireGuard 客户端,可以通过 WireGuard 隧道提供 SOCKS5、HTTP 代理和静态隧道功能,无需在宿主机创建 WireGuard 网络接口。
linux/amd64linux/arm64NET_ADMIN 或 privileged 权限| 标签 | 说明 |
|---|---|
latest | 当前推荐的稳定版本 |
v1.1.3 | WireProxy v1.1.3 |
拉取最新版:
docker pull goordonchen/wireproxy:latest
拉取固定版本:
docker pull goordonchen/wireproxy:v1.1.3
Docker 会根据宿主机架构自动选择 amd64 或 arm64 镜像。
mkdir -p /root/wireproxy
创建配置文件:
nano /root/wireproxy/wg.conf
配置示例:
[Interface]
Address = 10.14.0.2/16
PrivateKey = <你的WireGuard私钥>
DNS = 1.1.1.1
[Peer]
PublicKey = <WireGuard服务器公钥>
AllowedIPs = 0.0.0.0/0
Endpoint = example.com:51820
[Socks5]
BindAddress = 127.0.0.1:25344
请将以下内容替换为真实信息:
<你的WireGuard私钥><WireGuard服务器公钥>example.com:51820请勿公开或上传 WireGuard 私钥。
推荐在 Linux 服务器上使用主机网络模式:
docker run -d \
--name wireproxy \
--network host \
-v /root/wireproxy:/etc/wireproxy:ro \
--restart unless-stopped \
goordonchen/wireproxy:latest
说明:
--network host:容器直接使用宿主机网络/root/wireproxy:宿主机配置目录/etc/wireproxy:容器内配置目录:ro:以只读方式挂载配置,防止容器修改配置--restart unless-stopped:Docker 或服务器重启后自动运行WireProxy 是 WireGuard 客户端,通常不需要在宿主机开放入站的 51820 端口,但必须允许访问配置文件中 Endpoint 指定的地址和 UDP 端口。
如果配置为:
[Socks5]
BindAddress = 127.0.0.1:25344
SOCKS5 代理只能由宿主机本地访问,这是更安全的默认设置。
如果需要让局域网其他设备访问,可以改为:
[Socks5]
BindAddress = 0.0.0.0:25344
使用 0.0.0.0 时,请务必通过防火墙限制访问来源,不要将未认证的 SOCKS5 端口直接暴露到公网。
docker ps --filter name=wireproxy
查看日志:
docker logs --tail 100 wireproxy
持续查看日志:
docker logs -f wireproxy
如果 SOCKS5 监听在 127.0.0.1:25344:
curl --proxy socks5h://127.0.0.1:25344 https://api.ipify.org
也可以使用:
curl --proxy socks5h://127.0.0.1:25344 https://ifconfig.me
如果返回 WireGuard 服务器的出口 IP,说明代理运行正常。
docker run --rm goordonchen/wireproxy:latest -v
查看固定标签版本:
docker run --rm goordonchen/wireproxy:v1.1.3 -v
拉取最新版:
docker pull goordonchen/wireproxy:latest
删除旧容器:
docker rm -f wireproxy
重新创建:
docker run -d \
--name wireproxy \
--network host \
-v /root/wireproxy:/etc/wireproxy:ro \
--restart unless-stopped \
goordonchen/wireproxy:latest
宿主机上的 /root/wireproxy/wg.conf 不会因为删除容器而丢失。
查看日志:
docker logs --tail 100 wireproxy
通常是以下原因:
wg.conf 不存在docker inspect wireproxy \
--format '{{range .Mounts}}{{println .Source "->" .Destination}}{{end}}'
docker inspect goordonchen/wireproxy:latest \
--format '{{.Os}}/{{.Architecture}}'
本镜像为第三方构建镜像,WireProxy 项目版权和许可证归上游项目所有。
Content type
Image
Digest
sha256:6f5e44c5e…
Size
7.7 MB
Last updated
about 2 months ago
docker pull goordonchen/wireproxy