这是一个用于自动修改Plex服务器STUN端口的Web服务。当STUN端口发生变化时,可以通过Webhook自动更新Plex服务器的手动端口映射。
- 提供Web API接口用于修改Plex端口
- 支持Docker部署
- 支持与Lucky工具集成
代码来源: 代码从 NodeSeek 论坛 的脚本而来,增加了自定义URL更改的选项,并可部署为Docker服务。
sh build.sh- 创建
docker-compose.yml文件:
version: '3'
services:
plex-stun:
build: .
container_name: plex-stun
ports:
- "4201:4201"
volumes:
- ./token:/app/token
environment:
- PLEX_USERNAME=your_username
- PLEX_PASSWORD=your_password
- PLEX_URL=http://your_plex_server:32400
restart: unless-stopped- 启动服务:
docker-compose up -ddocker run -d \
--name plex-stun \
-p 4201:4201 \
-v ./token:/app/token \
-e PLEX_USERNAME=your_username \
-e PLEX_PASSWORD=your_password \
-e PLEX_URL=http://your_plex_server:32400 \
--restart unless-stopped \
plex-stun:latest| 变量名 | 说明 | 示例 |
|---|---|---|
| PLEX_USERNAME | Plex账号邮箱 | user@example.com |
| PLEX_PASSWORD | Plex账号密码 | your_password |
| PLEX_URL | Plex服务器地址 | http://192.168.1.100:32400 |
| PLEX_FIX_URL | 固定的自定义URL列表,多个URL用英文逗号分隔 | http://example1.com:32400,http://example2.com:32400 |
其中PLEX_FIX_URL是可选的,如果配置了,则不会被更新,会一直保留在Plex的custom URL列表中。比如我们有一个固定的IPv6地址,我们可以把域名和对应端口写上。
- 防火墙自动放行:开启
- Webhook:启用
- 接口地址:
- 修改Plex自带的远程访问,手动指定端口选项
http://<your-ip>:4201/change-port/#{port}
- 修改反代的域名的端口,参数中要加入自己的域名
#{port}stun在外网容易变化的端口your-domain.com是反代的域名plex.your-domain.com是来自于反代的Plex的域名http://60.123.123.123:4301/change-port/#{port}是另一个服务的URL
http://<your-ip>:4201/update-port-for-domain/?port=#{port}&plex-domain=plex.your-domain.com&with-update=http://60.123.123.123:4301/change-port/#{port}
作用:
-
修改反代的域名的端口
-
修改反代的域名的端口后,会自动更新Plex的custom URL列表,比如
plex.your-domain.com:#{port} -
如果
with-update参数不为空,则会把当前的web-hook地址向另一个服务传递,比如发出请求:http://60.123.123.123:4301/change-port/#{port} -
第一个参数用
?,第二个参数用&,第三个参数用&连接 -
修改自定义URL
http://<your-ip>:4201/change-custom-url/#{ipAddr}
- 请求方法:
GET
- 接口调用成功判断依据:
"success":true
部署成功后,可以通过访问 http://<ip>:4201/ 查看服务状态和使用说明。
如果看到"✅ 服务当前已经正常运行"的提示,则表示服务已经成功部署并正常运行。