← 返回 TimeAmber

自托管端口管理系统Portall

杨浦老苏 各种折腾 2024年07月17日 19:01

老苏一直在折腾各种开源软件,但总是记不清哪些应用占用了哪些端口,每次都是先随机想一个端口,然后在笔记中搜索,看有没有被占用过。Portall 就是用来解决老苏遇到的这种情况的,当然,excel 也是可以的 😂

什么是 Portall ?

Portall 是一个自托管端口管理系统,它提供了一个直观的 Web 界面,用于生成、跟踪和组织跨多个主机的端口和服务。它旨在让您更轻松地管理自托管应用和服务。

软件主要特征:

  • 轻松的端口管理:添加、删除和分配端口到不同的服务和主机
  • 端口号生成:为您的应用程序快速生成唯一的端口号
  • 导入工具:CaddyfileDocker-ComposeJSON 数据导入现有配置
  • 自定义规则:定义您自己的端口范围并为端口生成器设置排除项
  • 块级设计:拖放元素来组织端口并在主机之间移动应用程序
  • 主题:包括明暗模式,计划推出更多主题
  • 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存放数据库文件
图片

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
88558080
图片

环境

可变
PORT容器端口设置,默认设为 8080
SECRET_KEY用于加密和安全认证的密钥,根据需要进行修改
图片

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 portall 和 子目录
mkdir -p /volume1/docker/portall/data

# 进入 portall 目录
cd /volume1/docker/portall

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name portall \
   -p 8855:8080 \
   -v $(pwd)/data:/app/instance \
   -e PORT=8080 \
   -e SECRET_KEY=<your_secret_key> \
   need4swede/portall:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  rediary:
    image: need4swede/portall:latest
    container_name: portall
    restart: unless-stopped
    ports:
      - 8855:8080
    volumes:
      - ./data:/app/instance
    environment:
      - PORT=8080
      - SECRET_KEY=<your_secret_key>

然后执行下面的命令

# 新建文件夹 portall 和 子目录
mkdir -p /volume1/docker/portall/data

# 进入 portall 目录
cd /volume1/docker/portall

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:8855 就能看到主界面

图片

Add IP 添加 IP address

图片

加个描述

图片

Generate ,会随机生成了一个端口

图片

Settings --> General ,点 Save 将这个地址保存为缺省的 IP

图片

Ports 会看到之前生成的端口

图片

+ 号可以添加一些之前已经使用的端口

图片

添加完成之后

图片

官方的动图更直观

图片

参考文档

need4swede/Portall: Port Management Interface
地址:https://github.com/need4swede/Portall

Introducing Portall: A Self-Hosted Port Management System : r/selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/1dyack6/introducing_portall_a_selfhosted_port_management/

@所有人:写文不易,如果你都看到了这里,请点个在看,分享给更多的朋友;为确保你能收到每一篇文章,请主页右上角设置星标。

群晖 · 目录
上一篇实用文件服务器Dufs下一篇服务器端口状态监控工具WatchYourPorts

微信扫一扫
关注该公众号