目 录CONTENT

文章目录

Docker Compose部署WireGuard:配置Caddy反向代理一键部署 Wireguard-Easy(WireGuard可视化面板)|实测39万+速度|内网穿透/远程桌面/远程访问/


准备工作

下载并安装SSH连接工具Finalshell:

https://www.hostbuf.com/t/988.html

根据自己域名厂商域名解析,目前域名解析使用Cloudflare:

https://dash.cloudflare.com/login

1、关闭防火墙或者放行端口

sudo ufw disable

2、安装Docker

curl -sSL https://get.docker.com | sh

3、设置反向代理

创建一个目录用于存放配置文件并进入该文件目录

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 -d

4、安装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 -d

5、一键脚本方案

下载脚本:

https://drive.google.com/file/d/1YVOlFBYuojW0VBRE_P2-AkD6ODBjqUI1/view?pli=1

添加执行权限并执行脚本

chmod +x install-wg-easy.sh
sudo ./install-wg-easy.sh


0

评论区