Repolode
dsgnr

dsgnr/portchecker.io

开源的 TCP 端口检测工具,提供 REST API 和网页界面,可用 Docker 自部署。

Star
198
Fork
10
未关闭 Issue
1
最近提交
6天前

这是什么?

portchecker.io 用于检测指定主机名或 IP 地址上的 TCP 端口是否可达,适合排查网络配置、验证防火墙规则以及确认哪些端口对外开放。

项目由两部分组成:通过 Nginx 提供的静态 React 前端,以及基于 Litestar 构建的 Python API,后者使用 gunicorn 配合 uvicorn 工作进程运行。开发时可以单独启动前后端,也可以用 Docker Compose 一键拉起,生产镜像发布在 GitHub Container Registry 上。

API 默认不检测 IANA 特殊用途地址段中的私有 IP,设置 ALLOW_PRIVATE 后即可开启。API 还提供 Prometheus /metrics 端点,记录接口响应时间和状态码。

核心功能

  • 01检测任意主机名或 IP 地址的 TCP 端口是否可用。
  • 02提供 REST API,并附有接口文档。
  • 03内置由 Nginx 提供的网页界面。
  • 04支持 Docker 部署,提供预构建镜像和 Compose 配置。
  • 05提供 Prometheus 指标端点,便于监控 API。
  • 06可通过配置允许检测私有 IP 地址段。

适用场景

  • 修改防火墙规则后,检查服务端口是否已正确开放。
  • 从外部网络验证服务器只暴露了预期的端口。
  • 通过 REST API 将端口检测集成到脚本或监控系统中。
  • 在自有基础设施上自部署端口检测服务。

快速上手

  1. 1

    使用 Docker Compose 启动生产环境(前端端口 8080,API 端口 8000)

    docker-compose up

使用前须知

  • 采用 GPL-3.0 许可证,这是一种 copyleft 许可证,衍生作品需以相同条款开源。
  • 独立开发需要 Python 3.13、Poetry 以及 Node 26 或更新版本,使用 Docker 更简单。

收录于专题

标签

常见问题

portchecker.io 是什么?
开源的 TCP 端口检测工具,提供 REST API 和网页界面,可用 Docker 自部署。 portchecker.io 用于检测指定主机名或 IP 地址上的 TCP 端口是否可达,适合排查网络配置、验证防火墙规则以及确认哪些端口对外开放。
portchecker.io 可以免费使用吗?用的什么许可证?
portchecker.io 以 GPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
portchecker.io 还在维护吗?
活跃维护中。portchecker.io 最近一次提交是在 2026年11月1日。
portchecker.io 适合用来做什么?
修改防火墙规则后,检查服务端口是否已正确开放。 从外部网络验证服务器只暴露了预期的端口。 通过 REST API 将端口检测集成到脚本或监控系统中。 在自有基础设施上自部署端口检测服务。
portchecker.io 怎么安装和运行?
使用 Docker Compose 启动生产环境(前端端口 8080,API 端口 8000): docker-compose up
在哪里获取 portchecker.io?
源代码和安装说明在 GitHub 上:https://github.com/dsgnr/portchecker.io

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目