selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

portchecker.io logo

Self-host portchecker.io

v4.2.0

Open-source TCP port checker with REST API and web UI

ReleaseOpen SourceGPL-3.0
Updated13 hours ago
LanguagePython
Setup difficultyEasy
Stars
198
Ports
8080 (web frontend (nginx)), 8000 (API backend (litestar/uvicorn))
Docker
ghcr.io/dsgnr/portcheckerio-web
Install with Docker Compose

What is portchecker.io?

portchecker.io is an open-source utility that checks whether TCP ports are reachable on any given hostname or IP address. It bundles a Litestar REST API and a React front-end served by Nginx into two Docker containers. The tool helps developers and network operators diagnose connectivity issues, confirm firewall rules, and discover exposed services. It offers a browser interface with preset common ports, a programmatic API, Prometheus metrics export, and a toggle to include private IP ranges. No external database or cache is required. The latest version 4.2.0 uses the GPL-3.0 license.

Should you self-host portchecker.io?

portchecker.io scores 47/100 on selfhost.directory (how scoring works) and ranks #16 of 20 in Network Utilities. It has 198 GitHub stars.

It shipped 4 stable releases in the past year. The latest, v4.2.0, came out on 7 October 2026. New versions land roughly every 2 months.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is GPL-3.0-licensed and written mostly in Python.

Its closest alternative on selfhost.directory is MyIP (75/100, 12 241 stars). It scores higher overall, so compare the two before you pick. See portchecker.io vs MyIP side by side.

Features

  • Port scanning
  • Private IP range support
  • Prometheus Metrics
  • REST API
  • Web UI

portchecker.io README

How to install portchecker.io

Install portchecker.io with Docker Compose

Environment variables
API_URL, DEFAULT_HOST, DEFAULT_PORT, ALLOW_PRIVATE

$ docker-compose up

Uses pre-built images ghcr.io/dsgnr/portcheckerio-web:latest and ghcr.io/dsgnr/portcheckerio-api:latest. Web on port 8080, API on port 8000.

How to configure portchecker.io

  • ALLOW_PRIVATEFalseAllows private IP addresses in IANA IPv4 Special Registry ranges to be checked.

    Allows private IP addresses in IANA IPv4 Special Registry ranges to be checked.

    values: True/False

  • API_URLhttp://api:8000The URL of the API service if changed from the default. The scheme and port is required.

    The URL of the API service if changed from the default. The scheme and port is required.

  • DEFAULT_HOSTAllows a default host address value to be prefilled in the UI. Defaults to external/WAN IP if not set.

    Allows a default host address value to be prefilled in the UI. Defaults to external/WAN IP if not set.

  • DEFAULT_PORT443Allows a default port number to be prefilled in the UI.

    Allows a default port number to be prefilled in the UI.

portchecker.io releases & version history

More in Network Utilities

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…