自托管端口管理系统Portall
老苏一直在折腾各种开源软件,但总是记不清哪些应用占用了哪些端口,每次都是先随机想一个端口,然后在笔记中搜索,看有没有被占用过。Portall
就是用来解决老苏遇到的这种情况的,当然,excel
也是可以的 😂
什么是 Portall ?
Portall
是一个自托管端口管理系统,它提供了一个直观的Web
界面,用于生成、跟踪和组织跨多个主机的端口和服务。它旨在让您更轻松地管理自托管应用和服务。
软件主要特征:
- 轻松的端口管理:添加、删除和分配端口到不同的服务和主机
- 端口号生成:为您的应用程序快速生成唯一的端口号
- 导入工具:从
Caddyfile
、Docker-Compose
或JSON
数据导入现有配置 - 自定义规则:定义您自己的端口范围并为端口生成器设置排除项
- 块级设计:拖放元素来组织端口并在主机之间移动应用程序
- 主题:包括明暗模式,计划推出更多主题
- CSS Playground:使用自定义
CSS
支持修改外观 - 移动响应:从任何地方管理您的端口
技术栈
- 后端: Flask(Python)
- 数据库: SQLAlchemy 和 SQLite
- 前端: HTML、CSS、JavaScript
安装
在群晖上以 Docker 方式安装。
在注册表中搜索 portall
,选择第一个 need4swede/portall:
,版本选择 latest
。
本文写作时,
latest
版本对应为1.0.3
;
卷
在 docker
文件夹中,创建一个新文件夹 portall
,并在其中建一个子文件夹 data
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/portall/data |
/app/instance |
存放数据库文件 |
端口
本地端口不冲突就行,不确定的话可以用命令查一下
1 | # 查看端口占用 |
本地端口 | 容器端口 |
---|---|
8855 |
8080 |
环境
可变 | 值 |
---|---|
PORT |
容器端口设置,默认设为 8080 |
SECRET_KEY |
用于加密和安全认证的密钥,根据需要进行修改 |
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 portall 和 子目录 |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
1 | version: '3' |
然后执行下面的命令
1 | # 新建文件夹 portall 和 子目录 |
运行
在浏览器中输入 http://群晖IP:8855
就能看到主界面
点 Add IP
添加 IP address
加个描述
点 Generate
,会随机生成了一个端口
进 Settings
–> General
,点 Save
将这个地址保存为缺省的 IP
进 Ports
会看到之前生成的端口
点 +
号可以添加一些之前已经使用的端口
添加完成之后
官方的动图更直观
参考文档
need4swede/Portall: Port Management Interface
地址:https://github.com/need4swede/PortallIntroducing Portall: A Self-Hosted Port Management System : r/selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/1dyack6/introducing_portall_a_selfhosted_port_management/