703 字
4 分钟
通过 Docker 在 VPS 上部署 Sub-Store
前言
Sub-Store 是目前最强大的高级订阅管理工具。不同于基础的订阅转换,它更像是一个针对代理配置的“后端工作站”。
我个人主要将其用于以下场景:
-
多订阅聚合管理:将多个机场订阅和零散的自建节点整合,去重并重命名,保持节点列表整洁。
-
配置动态生成:利用其强大的文件存取和脚本(Script)功能,动态生成适配 Sing-box 的 JSON 配置。
-
一链接走天下:provider 字段中填入订阅,实现只需一条 Sub-Store 链接,即可在 iOS、Android、Windows 等全平台(Mihomo/Sing-box)实现代理通用且自动更新。
Waiting for api.github.com...
🛠️ 环境准备
1C 512M即可 使用机器为debian13
首先,安装必要的依赖工具
apt update && apt install -y curl sudo🛠️ 安装 Docker
提示如果你已经安装过 Docker,可以跳过此步骤。
使用官方脚本一键安装docker
curl -fsSL https://get.docker.com -o get-docker.shsudo sh get-docker.sh🛠️ 安装Substore
警告SUB_STORE_FRONTEND_BACKEND_PATH为substore api,是确保安全的唯一凭证,泄露后他人可随意访问你存的订阅
建议至少20位 本人曾有案例刚部署完50分钟内被扫出来,订阅全部泄露
- 请务必更改!
- 请务必更改!!
- 请务必更改!!!
推荐于1password生成*
提示可选docker run或docker compose形式
Docker run
docker run -d \ --restart=always \ -p 127.0.0.1:3001:3001 \ #仅暴露内网,需反代使用 -e "TZ=Asia/Shanghai" \ #设置上海时区,方便观察日志 -e "SUB_STORE_BACKEND_SYNC_CRON=55 23 * * *" \ #每日23点55分自动拉取订阅更新 -e "SUB_STORE_FRONTEND_BACKEND_PATH=/63PC2UpfxJicqFu84Zk7" \ #务必更改!!!设置api,此为确保安全的唯一凭证,切勿泄露,可使用随机密码生成,越长则越不容易被扫出来 -e "SUB_STORE_BODY_JSON_LIMIT=20mb" \ #设置备份还原最大文件大小为20mb,防止备份文件过大还原报错 -v /root/sub-store:/opt/app/data \ --name sub-store \ xream/sub-store:latestDocker Compose
自行保存为docker-compose.yml后于对应目录运行
services: sub-store: image: xream/sub-store:latest container_name: sub-store restart: always ports: - "127.0.0.1:3001:3001" environment: TZ: "Asia/Shanghai" SUB_STORE_BACKEND_SYNC_CRON: "55 23 * * *" SUB_STORE_FRONTEND_BACKEND_PATH: "/63PC2UpfxJicqFu84Zk7" #必须更改!!!设置api,此为确保安全的唯一凭证 SUB_STORE_BODY_JSON_LIMIT: "20mb" volumes: - "/root/sub-store:/opt/app/data"docker compose up -d🛠️ 使用caddy反代
提示已安装可跳过
请自行解析域名至你的服务器,也可使用宝塔(nginx)等反代
官方方式安装caddy
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-httpscurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpgcurl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.listsudo apt updatesudo apt install caddy打开/etc/caddy/Caddyfile,添加以下字段覆盖原文
substore.xxx.com { #你的域名 reverse_proxy localhost:3001}重载caddy并查看日志
systemctl reload caddyjournalctl -u caddy -f如无报错等问题,则输入如下网址访问你的substore界面
https://你的域名/subs?api=https://你的域名/你设置的api 通过 Docker 在 VPS 上部署 Sub-Store
https://blog.inklazy.com/posts/substore-docker/