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.

WatchYourPorts logo

Self-host WatchYourPorts

0.1.2

Open ports inventory with InfluxDB2/Grafana export

BetaOpen SourceMIT
Updatedlast year
LanguageGo
Setup difficultyModerate
ThemeDark mode
Stars
206
Port
8853 (Web GUI)
Docker
aceberg/watchyourports
Install with Docker
Main dashboard showing port inventoryPort detail viewAdditional dashboard view

What is WatchYourPorts?

WatchYourPorts is a self-hosted network monitoring tool that scans and tracks open ports across local servers. It provides a web-based dashboard showing port status, history, and statistics, with data export to InfluxDB2 for Grafana visualization. The application runs as a Docker container and can import port mappings from Docker containers automatically. It supports theming via Bootswatch, configurable scan intervals, and offers a REST API for programmatic access. Authentication can be added via the companion ForAuth service or SSO tools like Authelia. The project is written in Go and licensed under MIT.

Should you self-host WatchYourPorts?

WatchYourPorts scores 41/100 on selfhost.directory (how scoring works) and ranks #39 of 48 in Network Monitoring. It has 206 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is MIT-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is mitmproxy (86/100, 46 451 stars). It scores higher overall, so compare the two before you pick. See WatchYourPorts vs mitmproxy side by side.

Features

  • Docker port import
  • Local network mode
  • Multi-server monitoring
  • Port Monitoring
  • Proxy Authentication
  • REST API
  • Theming
  • Web Dashboard

WatchYourPorts README

How to install WatchYourPorts

Install WatchYourPorts with Docker

Docker
Environment variables
TZ, HOST, PORT, THEME, COLOR, TIMEOUT, HIST_TRIM, INFLUX_*

docker run --name wyp
-e "TZ=Asia/Novosibirsk"
-v ~/.dockerdata/WatchYourPorts:/data/WatchYourPorts
-p 8853:8853
aceberg/watchyourports

Basic Docker run command with required timezone and data volume

How to configure WatchYourPorts

  • COLORdarkBackground color: light or dark

    Background color: light or dark

    values: light or dark

  • -d/data/WatchYourPortsPath to config dir

    Path to config dir

  • HIST_TRIM90How many port states are saved in memory and displayed

    How many port states are saved in memory and displayed

  • HOST0.0.0.0Listen address

    Listen address

  • INFLUX_ADDRAddress:port of InfluxDB2 server

    Address:port of InfluxDB2 server

  • INFLUX_BUCKETInfluxDB2 bucket

    InfluxDB2 bucket

  • INFLUX_ENABLEfalseEnable export to InfluxDB2

    Enable export to InfluxDB2

    values: true or false

  • INFLUX_ORGInfluxDB2 org

    InfluxDB2 org

  • INFLUX_SKIP_TLSfalseSkip TLS Verify

    Skip TLS Verify

    values: true or false

  • INFLUX_TOKENSecret token, generated by InfluxDB2

    Secret token, generated by InfluxDB2

  • -nPath to local JS and Themes (node-bootstrap)

    Path to local JS and Themes (node-bootstrap)

  • PORT8853Port for web GUI

    Port for web GUI

  • THEMEgrassAny theme name from bootswatch.com in lowercase or additional themes

    Any theme name from bootswatch.com in lowercase or additional themes

  • TIMEOUT10How often watched ports are scanned (minutes)

    How often watched ports are scanned (minutes)

  • TZSet your timezone for correct time

    Set your timezone for correct time

WatchYourPorts releases & version history

More in Network Monitoring

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…