前言:
之前一直使用的网络上的订阅转换,还是有泄漏的风险,正好最近没什么折腾的就折腾了下Subconverter+Subweb+MyUrls
,不了解的自行百度,这里反向代理我使用的traefik。其他反向代理工具自行研究使用。
开始:
搭建后端Subconverter
docker-compose部署
version: '3.3'
services:
subconverter:
container_name: subcon
restart: always
ports:
- '25500:25500'
image: 'tindy2013/subconverter:latest'
反向代理
traefik:
dynamic.yml增加如下:
http:
routers:
sub:
service: sub
middlewares:
rule: "Host(`sub.你的顶级域名`)"
services:
suba:
loadBalancer:
servers:
- url: "http://ip:25500"
访问显示File not found.,说明成功了
搭建前端Subweb
# Clone项目
git clone https://github.com/CareyWang/sub-web.git
cd sub-web
# 编辑.env配置文件
nano .env
# 修改后端地址、短链接地址
# API 后端
# 这里填写刚刚部署的sub后端
VUE_APP_SUBCONVERTER_DEFAULT_BACKEND = "https://sub.你的顶级域名"
# 短链接后端
#这里是短链接,下面有教程,先设置你想要的短链接地址
VUE_APP_MYURLS_DEFAULT_BACKEND = "https://s.你的顶级域名w"
# 文本托管后端
VUE_APP_CONFIG_UPLOAD_BACKEND = "https://sub.你的顶级域名"
# 编辑.
cd src/views
nano Subconverter.vue
#39行
# 这里是备注,随意填写
placeholder="Herozmy | https://www.herozmy.com/sub?"
#299行
# 填写的后端地址
backendOptions: [{ value: "https://sub.顶级域名/sub?" }],
增加远程地址
在大约300行remoteConfig: [
下面填写下面地址
{
label: "ACL4SSR",
options: [
{
label: "ACL4SSR_Online 默认版 分组比较全 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online.ini"
},
{
label: "ACL4SSR_Online_AdblockPlus 更多去广告 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_AdblockPlus.ini"
},
{
label: "ACL4SSR_Online_NoAuto 无自动测速 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoAuto.ini"
},
{
label: "ACL4SSR_Online_NoReject 无广告拦截规则 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_NoReject.ini"
},
{
label: "ACL4SSR_Online_Mini 精简版 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini.ini"
},
{
label: "ACL4SSR_Online_Mini_AdblockPlus.ini 精简版 更多去广告 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_AdblockPlus.ini"
},
{
label: "ACL4SSR_Online_Mini_NoAuto.ini 精简版 不带自动测速 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_NoAuto.ini"
},
{
label: "ACL4SSR_Online_Mini_Fallback.ini 精简版 带故障转移 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_Fallback.ini"
},
{
label: "ACL4SSR_Online_Mini_MultiMode.ini 精简版 自动测速、故障转移、负载均衡 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Mini_MultiMode.ini"
},
{
label: "ACL4SSR_Online_Full 全分组 重度用户使用 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full.ini"
},
{
label: "ACL4SSR_Online_Full_NoAuto.ini 全分组 无自动测速 重度用户使用 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_NoAuto.ini"
},
{
label: "ACL4SSR_Online_Full_AdblockPlus 全分组 重度用户使用 更多去广告 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_AdblockPlus.ini"
},
{
label: "ACL4SSR_Online_Full_Netflix 全分组 重度用户使用 奈飞全量 (与Github同步)",
value:
"https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/config/ACL4SSR_Online_Full_Netflix.ini"
},
{
label: "ACL4SSR 本地 默认版 分组比较全",
value: "config/ACL4SSR.ini"
},
{
label: "ACL4SSR_Mini 本地 精简版",
value: "config/ACL4SSR_Mini.ini"
},
{
label: "ACL4SSR_Mini_NoAuto.ini 本地 精简版+无自动测速",
value: "config/ACL4SSR_Mini_NoAuto.ini"
},
{
label: "ACL4SSR_Mini_Fallback.ini 本地 精简版+fallback",
value: "config/ACL4SSR_Mini_Fallback.ini"
},
{
label: "ACL4SSR_BackCN 本地 回国",
value: "config/ACL4SSR_BackCN.ini"
},
{
label: "ACL4SSR_NoApple 本地 无苹果分流",
value: "config/ACL4SSR_NoApple.ini"
},
{
label: "ACL4SSR_NoAuto 本地 无自动测速 ",
value: "config/ACL4SSR_NoAuto.ini"
},
{
label: "ACL4SSR_NoAuto_NoApple 本地 无自动测速&无苹果分流",
value: "config/ACL4SSR_NoAuto_NoApple.ini"
},
{
label: "ACL4SSR_NoMicrosoft 本地 无微软分流",
value: "config/ACL4SSR_NoMicrosoft.ini"
},
{
label: "ACL4SSR_WithGFW 本地 GFW列表",
value: "config/ACL4SSR_WithGFW.ini"
}
]
},
docker build
docker build -t subweb-local:latest .
构建完成,以后在本地就会有subweb-local:latest
镜像
我们直接在上面的docker-compose文件增加就行
version: '3.3'
services:
subconverter:
container_name: subcon
restart: always
ports:
- '25500:25500'
image: 'tindy2013/subconverter:latest'
subweb-local:
ports:
- '58080:80'
restart: always
container_name: subweb
image: 'subweb-local:latest'
反向代理
dynamic.yml文件增加如下:
http:
routers:
subweb:
service: swbweb
middlewares:
rule: "Host(`subweb.顶级域名`)"
services:
subweb:
loadBalancer:
servers:
- url: "http://10.10.10.139:58080"
短域名Myurls
#clone项目
git clone https://github.com/CareyWang/MyUrls.git MyUrls
cd MyUrls
cp .env.example .env
nano .env
# 修改短链接
MYURLS_DOMAIN=s.顶级域名
nano public/index.html
# #修改短链接域名
const backend = 'https://s.顶级域名'
#部署服务
docker-compose up -d
反向代理
这里折腾了好久,用traefik添加反代一直无法使用,翻看lusse发现还需要设置跨域Access-Control-Allow-Origin *
dynamic.yml增加如下配置:
http:
routers:
s:
service: s
middlewares:
- add-cors
rule: "Host(`s.顶级域名`)"
services:
s:
loadBalancer:
servers:
- url: "http://ip:8002"
middlewares:
add-cors:
headers:
customResponseHeaders:
Access-Control-Allow-Origin: "*"
enjoy
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容