
准备工作
下载并安装SSH连接工具Finalshell:
https://www.hostbuf.com/t/988.html根据自己域名厂商域名解析,目前域名解析使用Cloudflare:
https://dash.cloudflare.com/login1、关闭防火墙或者放行端口
sudo ufw disable2、安装Docker
curl -sSL https://get.docker.com | sh3、设置反向代理
创建一个目录用于存放配置文件并进入该文件目录
sudo mkdir -p /etc/docker/containers/caddy && cd /etc/docker/containers/caddy在/etc/docker/containers/caddy目录下创建docker-compose.yml,然后贴入以下配置
services:
caddy:
container_name: caddy
image: caddy:2.10.0-alpine
# publish everything you deem necessary
ports:
- '80:80/tcp'
- '443:443/tcp'
- '443:443/udp'
networks:
- caddy
restart: unless-stopped
volumes:
- './Caddyfile:/etc/caddy/Caddyfile:ro'
- config:/config
- data:/data
networks:
caddy:
name: caddy
volumes:
config:
data:在/etc/docker/containers/caddy目录下创建Caddyfile,然后贴入以下配置(修改为自己的邮箱和解析好的域名)
{
email
你的邮箱@example.com
}
你的域名 {
reverse_proxy wg-easy:80
}启动容器
sudo docker compose up -d4、安装wg-easy:
https://github.com/wg-easy/wg-easy安装文档:
https://wg-easy.github.io/wg-easy/latest/examples/tutorials/basic-installation/创建一个目录用于存放配置文件
sudo mkdir -p /etc/docker/containers/wg-easy && cd /etc/docker/containers/wg-easy下载 Docker Compose 文件
sudo curl -o /etc/docker/containers/wg-easy/docker-compose.yml https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml修改docker-compose.yml配置(红色端口部分要一致)
volumes:
etc_wireguard:
services:
wg-easy:
image: ghcr.io/wg-easy/wg-easy:15
container_name: wg-easy
# 让 wg-easy 在容器内部监听 80 端口,给 Caddy 反代
environment:
- LANG=en
- PORT=80
# 显式指定 WireGuard 监听端口(容器内部 / 宿主机都用这一份)
- WG_PORT=
51820 # 如果要自定义,就改这个
# 只暴露 WireGuard 的 UDP 端口即可,HTTP 由 Caddy 反代
ports:
- "
51820:
51820/udp" # 或者 "${WG_PORT}:${WG_PORT}/udp"
volumes:
- etc_wireguard:/etc/wireguard
- /lib/modules:/lib/modules:ro
networks:
- caddy
restart: unless-stopped
cap_add:
- NET_ADMIN
- SYS_MODULE
sysctls:
- net.ipv4.ip_forward=1
- net.ipv4.conf.all.src_valid_mark=1
- net.ipv6.conf.all.disable_ipv6=0
- net.ipv6.conf.all.forwarding=1
- net.ipv6.conf.default.forwarding=1
# 只声明一个已有的 caddy 网络即可
networks:
caddy:
external: true启动wg-easy
sudo docker compose up -d更新wg-easy(后续可以用到)
cd /etc/docker/containers/wg-easy
sudo docker compose pull
sudo docker compose up -d5、一键脚本方案
下载脚本:
https://drive.google.com/file/d/1YVOlFBYuojW0VBRE_P2-AkD6ODBjqUI1/view?pli=1添加执行权限并执行脚本
chmod +x install-wg-easy.sh
sudo ./install-wg-easy.sh
评论区