先安装WireGuard,GO版点我前往
安装Docker-compose
apt-get install docker-compose
建立docker-compose.yaml文件
API_LISTEN_IP=docker0接口ip
version: '3.6'
services:
wg-gen-web:
image: vx3r/wg-gen-web:latest
container_name: wg-gen-web
restart: always
expose:
- "8080/tcp"
ports:
- 80:8080
environment:
- WG_CONF_DIR=/data
- WG_INTERFACE_NAME=wg0.conf
- OAUTH2_PROVIDER_NAME=fake
- WG_STATS_API=http://<API_LISTEN_IP>:8182
volumes:
- /etc/wireguard:/data
network_mode: bridge
wg-json-api:
image: james/wg-api:latest
container_name: wg-json-api
restart: always
cap_add:
- NET_ADMIN
network_mode: "host"
command: wg-api --device wg0 --listen <API_LISTEN_IP>:8182
执行
docker-compose up -d
创建reload服务 wg-gen-web.service
# /etc/systemd/system/wg-gen-web.service
[Unit]
Description=Restart WireGuard
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/bin/systemctl reload wg-quick@wg0.service
[Install]
WantedBy=multi-user.target
创建监听文件 wg-gen-web.path
# /etc/systemd/system/wg-gen-web.path
[Unit]
Description=Watch /etc/wireguard for changes
[Path]
PathModified=/etc/wireguard
[Install]
WantedBy=multi-user.target
设置自启
systemctl enable wg-gen-web.service wg-gen-web.path --now
此处评论已关闭