Port Map

Which ports each self-hosted app listens on, how to expose them, and which ones two apps share.

Every row comes from an app profile in the ANAROQ catalog, with its sources on the app's page. Public ports are meant to be reached from outside the stack, usually through a reverse proxy; internal ones stay on the stack's own Docker network.

Two apps on one server can each keep an internal port of the same number: separate Compose stacks have separate networks. A clash happens when two apps want the same port on the host, which is what publishing a public port directly does.

All ports

139 of 139 ports shown.

PortAppComponentExposurePurposeShared with
5678/tcpn8nn8n (main)Public, through a proxyEditor UI, REST API and webhooks (HTTP; put behind a TLS reverse proxy)—
5679/tcpn8nn8n (main)Internal onlyTask broker that the external task-runner sidecar connects to—
5432/tcpn8nPostgreSQLInternal onlyPostgreSQL connections from n8n main and workersPostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
6379/tcpn8nRedis (queue broker)Internal onlyQueue-mode job broker (Bull queue) between main and workersDify, WordPress, Nextcloud, Immich, Paperless-ngx, Outline, Valkey, Activepieces
5678/tcpn8nn8n workerInternal onlyWorker server: /healthz, readiness and /metrics endpoints—
5679/tcpn8nn8n workerInternal onlyWorker task broker for its own task-runner sidecar—
5432/tcpPostgreSQLPostgreSQLInternal onlyPostgreSQL client connections (keep on the internal Docker network)n8n, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
8080/tcpCoolifyCoolify (app, Reverb realtime, terminal)Public, through a proxyDashboard and API; published on host port 8000 (close after a proxy domain is set)Dify, Open WebUI, SearXNG, LocalAI, Keycloak
6001/tcpCoolifyCoolify (app, Reverb realtime, terminal)Public, through a proxyRealtime (Laravel Reverb) for direct-IP access; close after a proxy domain is set—
6002/tcpCoolifyCoolify (app, Reverb realtime, terminal)Public, through a proxyWeb terminal for direct-IP access; close after a proxy domain is set—
80/tcpCoolifyTraefik (coolify-proxy)Public, through a proxyHTTP traffic and certificate generation via TraefikDify, WordPress, Nextcloud, Vaultwarden, BookStack, Activepieces, AdGuard Home
443/tcpCoolifyTraefik (coolify-proxy)Public, through a proxyHTTPS traffic via TraefikDify, BookStack, AdGuard Home
443/udpCoolifyTraefik (coolify-proxy)Public, through a proxyHTTP/3 (QUIC) via TraefikBookStack, AdGuard Home
8080/tcpCoolifyTraefik (coolify-proxy)Internal onlyTraefik dashboard/API; not in the firewall's required list, keep closedDify, Open WebUI, SearXNG, LocalAI, Keycloak
80/tcpDifynginx reverse proxyPublic, through a proxyHTTP entry point for the web app, console and APICoolify, WordPress, Nextcloud, Vaultwarden, BookStack, Activepieces, AdGuard Home
443/tcpDifynginx reverse proxyPublic, through a proxyHTTPS entry point (when NGINX_HTTPS_ENABLED=true)Coolify, BookStack, AdGuard Home
5003/tcpDifyDify plugin daemonInternal onlyPlugin remote debugging; published on the host by default, firewall it—
5002/tcpDifyDify plugin daemonInternal onlyPlugin daemon API (also serves /e/ webhooks via nginx)—
5001/tcpDifyDify APIInternal onlyDify API (behind nginx)—
3000/tcpDifyDify Web (Next.js)Internal onlyNext.js web frontend (behind nginx)Gitea, Paperless-ngx, Outline, Linkwarden, Grafana, Woodpecker CI, Flowise, AdGuard Home, Umami
8194/tcpDifyDifySandbox (code execution)Internal onlyCode execution sandbox API—
8080/tcpDifyVector database (Weaviate by default)Internal onlyWeaviate HTTP APICoolify, Open WebUI, SearXNG, LocalAI, Keycloak
6379/tcpDifyRedisInternal onlyRedis cache and Celery brokern8n, WordPress, Nextcloud, Immich, Paperless-ngx, Outline, Valkey, Activepieces
5432/tcpDifyPostgreSQLInternal onlyPostgreSQL metadata databasen8n, PostgreSQL, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
3128/tcpDifySSRF proxy (Squid)Internal onlySquid forward proxy for outbound requests from api and sandbox—
8080/tcpOpen WebUIOpen WebUIPublic, through a proxyWeb UI and API (HTTP), published behind a reverse proxyCoolify, Dify, SearXNG, LocalAI, Keycloak
11434/tcpOpen WebUIOllamaInternal onlyOllama API used by Open WebUI (OLLAMA_BASE_URL), unauthenticated—
80/tcpWordPressWordPress (Apache + PHP 8.4)Public, through a proxyHTTP site and wp-admin (Apache), behind a TLS reverse proxyCoolify, Dify, Nextcloud, Vaultwarden, BookStack, Activepieces, AdGuard Home
3306/tcpWordPressMariaDBInternal onlyMariaDB client protocol for WordPressBookStack, Ghost
6379/tcpWordPressRedis (object cache)Internal onlyRedis protocol for the object cache (only with the option enabled)n8n, Dify, Nextcloud, Immich, Paperless-ngx, Outline, Valkey, Activepieces
3001/tcpUptime KumaUptime KumaPublic, through a proxyWeb UI, status pages and WebSocket API; publish only behind an HTTPS reverse proxyAnythingLLM
3000/tcpGiteaGitea serverPublic, through a proxyWeb UI, API and Git over HTTP(S) (behind a reverse proxy)Dify, Paperless-ngx, Outline, Linkwarden, Grafana, Woodpecker CI, Flowise, AdGuard Home, Umami
22/tcpGiteaGitea serverPublic, through a proxyGit over SSH (rootful image; usually published on host port 222 or 2222)—
5432/tcpGiteaPostgreSQLInternal onlyPostgreSQL for Gitea (db:5432 on the Compose network)n8n, PostgreSQL, Dify, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
80/tcpNextcloudNextcloud (Apache, PHP and cron)Public, through a proxyWeb UI, WebDAV/CalDAV/CardDAV and sync clients (HTTP; serve only behind TLS)Coolify, Dify, WordPress, Vaultwarden, BookStack, Activepieces, AdGuard Home
5432/tcpNextcloudPostgreSQLInternal onlyPostgreSQL connections from Nextcloudn8n, PostgreSQL, Dify, Gitea, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
6379/tcpNextcloudRedis (file locking, distributed cache, sessions)Internal onlyRedis for file locking, distributed cache and PHP sessionsn8n, Dify, WordPress, Immich, Paperless-ngx, Outline, Valkey, Activepieces
2283/tcpImmichImmich server (API, web UI, jobs)Public, through a proxyWeb UI, REST API and mobile-app uploads (HTTP with WebSockets; put behind TLS)—
3003/tcpImmichImmich machine learning (CPU)Internal onlyMachine-learning API called by the server; unauthenticated—
6379/tcpImmichValkey (job queue)Internal onlyJob queue between the server's workers (no password)n8n, Dify, WordPress, Nextcloud, Paperless-ngx, Outline, Valkey, Activepieces
5432/tcpImmichPostgreSQL 14 with VectorChord (Immich image)Internal onlyPostgreSQL connections from the servern8n, PostgreSQL, Dify, Gitea, Nextcloud, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
8000/tcpPaperless-ngxPaperless-ngx (web server, task worker, consumer)Public, through a proxyWeb UI, REST API and WebSocket status updates (HTTP; put behind TLS)Portainer CE, Woodpecker CI, LibreChat, Plausible Community Edition
5432/tcpPaperless-ngxPostgreSQLInternal onlyPostgreSQL connections from Paperlessn8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
6379/tcpPaperless-ngxValkey (Celery task broker)Internal onlyCelery task broker and result backend (Redis protocol)n8n, Dify, WordPress, Nextcloud, Immich, Outline, Valkey, Activepieces
3000/tcpPaperless-ngxGotenberg (Office and e-mail to PDF)Internal onlyGotenberg conversion API used by Paperless (office-documents option)Dify, Gitea, Outline, Linkwarden, Grafana, Woodpecker CI, Flowise, AdGuard Home, Umami
9998/tcpPaperless-ngxApache Tika (Office text extraction)Internal onlyTika Server parsing API used by Paperless (office-documents option)—
80/tcpVaultwardenVaultwardenPublic, through a proxyWeb vault, client API and WebSocket notifications (Rocket HTTP); serve only through an HTTPS reverse proxyCoolify, Dify, WordPress, Nextcloud, BookStack, Activepieces, AdGuard Home
80/tcpBookStackBookStack (linuxserver.io image: nginx + PHP-FPM 8.5)Public, through a proxyWeb UI and REST API (nginx + PHP-FPM), behind a TLS reverse proxyCoolify, Dify, WordPress, Nextcloud, Vaultwarden, Activepieces, AdGuard Home
443/tcpBookStackBookStack (linuxserver.io image: nginx + PHP-FPM 8.5)Internal onlynginx HTTPS with the image's self-signed certificate; unused, TLS ends at the proxyCoolify, Dify, AdGuard Home
443/udpBookStackBookStack (linuxserver.io image: nginx + PHP-FPM 8.5)Internal onlynginx HTTP/3 (QUIC) listener of the image; unusedCoolify, AdGuard Home
11211/tcpBookStackBookStack (linuxserver.io image: nginx + PHP-FPM 8.5)Internal onlymemcached started by the image; BookStack's default CACHE_DRIVER is file—
3306/tcpBookStackMariaDBInternal onlyMariaDB client protocol for BookStackWordPress, Ghost
3000/tcpOutlineOutline (web, API, collaboration, worker)Public, through a proxyWeb UI, API and WebSockets (collaboration); HTTP, put behind TLSDify, Gitea, Paperless-ngx, Linkwarden, Grafana, Woodpecker CI, Flowise, AdGuard Home, Umami
5432/tcpOutlinePostgreSQLInternal onlyPostgreSQL connections from Outlinen8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
6379/tcpOutlineRedis (queues, cache, rate limiter)Internal onlyRedis for Outline's queues, cache and rate limitern8n, Dify, WordPress, Nextcloud, Immich, Paperless-ngx, Valkey, Activepieces
9000/tcpMealieMealie (web UI and API)Public, through a proxyWeb UI and REST API (HTTP; put behind a TLS reverse proxy)Portainer CE, Woodpecker CI, authentik, Keycloak, Plausible Community Edition
5432/tcpMealiePostgreSQLInternal onlyPostgreSQL connections from Mealie (database=postgres only)n8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
3000/tcpLinkwardenLinkwarden (web, worker and headless Chromium)Public, through a proxyWeb UI, REST API, browser extension and mobile app (HTTP; put behind TLS)Dify, Gitea, Paperless-ngx, Outline, Grafana, Woodpecker CI, Flowise, AdGuard Home, Umami
5432/tcpLinkwardenPostgreSQLInternal onlyPostgreSQL connections from the web and worker processesn8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
7700/tcpLinkwardenMeilisearch (full-text search)Internal onlyMeilisearch API (indexing by the worker, searches by the web app)LibreChat
3000/tcpGrafanaGrafana (UI, data source proxy and alerting)Public, through a proxyWeb UI and HTTP API (HTTP; put behind a TLS reverse proxy)Dify, Gitea, Paperless-ngx, Outline, Linkwarden, Woodpecker CI, Flowise, AdGuard Home, Umami
5432/tcpGrafanaPostgreSQLInternal onlyPostgreSQL connections from Grafana (database=postgres only)n8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
9090/tcpPrometheusPrometheusInternal onlyWeb UI, PromQL HTTP API and /metrics; no login, so keep it on the internal network—
3100/tcpGrafana LokiLokiInternal onlyHTTP API: push (/loki/api/v1/push, /otlp/v1/logs), LogQL queries, /ready; no authentication—
9095/tcpGrafana LokiLokiInternal onlygRPC between Loki components (default grpc_listen_port); unused from outside—
9443/tcpPortainer CEPortainer Server (CE)Public, through a proxyUI and API over HTTPS (self-signed certificate by default); keep it on a VPN or a restricted networkauthentik
8000/tcpPortainer CEPortainer Server (CE)Public, through a proxyTCP tunnel server for Edge Agents; publish only when Edge Agents are usedPaperless-ngx, Woodpecker CI, LibreChat, Plausible Community Edition
9000/tcpPortainer CEPortainer Server (CE)Internal onlyLegacy plain-HTTP UI and API; listens by default but is not published; turn off with --http-disabledMealie, Woodpecker CI, authentik, Keycloak, Plausible Community Edition
8333/tcpSeaweedFSSeaweedFS (weed mini)Public, through a proxyS3 API (SigV4, path-style) and the /healthz probe; serve only through an HTTPS reverse proxy—
9333/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyMaster HTTP API and UI (volume assignment); no authentication—
19333/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyMaster gRPC (HTTP port + 10000); mutual TLS only when configured—
9340/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyVolume server HTTP (object data); writes unprotected without a JWT signing key—
19340/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyVolume server gRPC (HTTP port + 10000)—
8888/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyFiler HTTP API and UI; reads and writes every file without auth unless JWT keys are set—
18888/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyFiler gRPC (HTTP port + 10000), used by the S3 gateway—
18333/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyS3 gateway gRPC (HTTP port + 10000)—
23646/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyAdmin server; with -admin.ui=false only /health and /metrics—
33646/tcpSeaweedFSSeaweedFS (weed mini)Internal onlyAdmin worker gRPC (HTTP port + 10000) for the maintenance worker; no password auth—
6379/tcpValkeyValkeyInternal onlyValkey client connections (RESP); keep on the internal Docker network or on loopbackn8n, Dify, WordPress, Nextcloud, Immich, Paperless-ngx, Outline, Activepieces
8065/tcpMattermostMattermost Team Edition (web app, API, WebSockets, jobs)Public, through a proxyWeb app, REST API and WebSockets (HTTP); put behind TLS—
5432/tcpMattermostPostgreSQLInternal onlyPostgreSQL connections from Mattermostn8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
8000/tcpWoodpecker CIWoodpecker server (web UI, API, webhooks, scheduler)Public, through a proxyWeb UI, API and forge webhooks (HTTP); serve through an HTTPS reverse proxyPaperless-ngx, Portainer CE, LibreChat, Plausible Community Edition
9000/tcpWoodpecker CIWoodpecker server (web UI, API, webhooks, scheduler)Internal onlygRPC for agents; plain text by default, put TLS in front (h2c proxy) before remote agents use itMealie, Portainer CE, authentik, Keycloak, Plausible Community Edition
3000/tcpWoodpecker CIWoodpecker agent with its pipeline containers (Docker backend)Internal onlyAgent health endpoint (/healthz) used by the image's HEALTHCHECKDify, Gitea, Paperless-ngx, Outline, Linkwarden, Grafana, Flowise, AdGuard Home, Umami
3000/tcpFlowiseFlowisePublic, through a proxyWeb UI, REST and prediction API, embed widget (HTTP; behind a TLS reverse proxy)Dify, Gitea, Paperless-ngx, Outline, Linkwarden, Grafana, Woodpecker CI, AdGuard Home, Umami
5432/tcpFlowisePostgreSQLInternal onlyPostgreSQL connections from Flowise (database option postgres)n8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
7860/tcpLangflowLangflow (editor and API)Public, through a proxyVisual editor, REST API and MCP endpoints (HTTP; put behind a TLS reverse proxy)—
5432/tcpLangflowPostgreSQLInternal onlyPostgreSQL connections from Langflow (LANGFLOW_DATABASE_URL)n8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
3080/tcpLibreChatLibreChat (API and web client)Public, through a proxyWeb client and API (HTTP), published behind a reverse proxy—
27017/tcpLibreChatMongoDBInternal onlyMongoDB used by LibreChat (MONGO_URI)—
7700/tcpLibreChatMeilisearchInternal onlyMeilisearch API for conversation search; never publishedLinkwarden
5432/tcpLibreChatPostgreSQL with pgvectorInternal onlyPostgreSQL with pgvector, used only by rag_apin8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, Activepieces, authentik, Keycloak, Plausible Community Edition, Umami
8000/tcpLibreChatrag_api (lite)Internal onlyrag_api file indexing and retrieval (RAG_API_URL), called by LibreChatPaperless-ngx, Portainer CE, Woodpecker CI, Plausible Community Edition
3001/tcpAnythingLLMAnythingLLMPublic, through a proxyWeb UI, REST API and agent WebSocket; publish only behind an HTTPS reverse proxyUptime Kuma
8080/tcpSearXNGSearXNGPublic, through a proxyWeb UI and search API (Granian HTTP); serve through an HTTPS reverse proxyCoolify, Dify, Open WebUI, LocalAI, Keycloak
6333/tcpQdrantQdrantPublic, through a proxyREST API, Web UI (/dashboard) and health/metrics; only with an API key and HTTPS—
6334/tcpQdrantQdrantInternal onlygRPC API for clients on the internal Docker network—
8080/tcpLocalAILocalAIPublic, through a proxyOpenAI-compatible API and web UI (HTTP), behind a reverse proxy, API key requiredCoolify, Dify, Open WebUI, SearXNG, Keycloak
80/tcpActivepiecesActivepieces (app: API and UI)Public, through a proxyUI, REST API, webhooks and the worker's API/Socket.IO endpoint (HTTP; put behind TLS)Coolify, Dify, WordPress, Nextcloud, Vaultwarden, BookStack, AdGuard Home
5432/tcpActivepiecesPostgreSQLInternal onlyPostgreSQL connections from the appn8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, authentik, Keycloak, Plausible Community Edition, Umami
6379/tcpActivepiecesRedis (BullMQ job queue)Internal onlyBullMQ job queue between the app and the workersn8n, Dify, WordPress, Nextcloud, Immich, Paperless-ngx, Outline, Valkey
8096/tcpJellyfinJellyfin (server, web client and FFmpeg)Public, through a proxyWeb client, HTTP API and streaming for every client app (HTTP; put behind TLS)—
8123/tcpHome AssistantHome Assistant Core (with go2rtc and SQLite recorder)Public, through a proxyWeb UI, REST and WebSocket API, companion apps; on the host network (put behind TLS)Plausible Community Edition
53/udpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyPlain DNS on the host's interfaces; allow only your own networks—
53/tcpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyPlain DNS over TCP (large answers, TCP fallback); same audience as 53/udp—
67/udpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyDHCP server (off by default; LAN only, needs host networking in Docker)—
68/udpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyDHCP client side of the optional DHCP server (LAN only)—
80/tcpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyWeb UI and API after setup (port chosen in the wizard; keep it off the public internet)Coolify, Dify, WordPress, Nextcloud, Vaultwarden, BookStack, Activepieces
443/tcpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyHTTPS web UI and DNS-over-HTTPS once encryption is on (collides with a host proxy)Coolify, Dify, BookStack
443/udpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyDNS-over-HTTPS over HTTP/3 once encryption is onCoolify, BookStack
853/tcpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyDNS-over-TLS once encryption is on—
853/udpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyDNS-over-QUIC once encryption is on—
3000/tcpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Internal onlyFirst-start setup wizard on 0.0.0.0:3000, open to anyone until finished; reach via SSH tunnelDify, Gitea, Paperless-ngx, Outline, Linkwarden, Grafana, Woodpecker CI, Flowise, Umami
3000/udpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Internal onlyHTTP/3 on the alternative web port (exposed by the image, not needed by default)—
5443/tcpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyDNSCrypt (optional)—
5443/udpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Public, through a proxyDNSCrypt (optional)—
6060/tcpAdGuard HomeAdGuard Home (DNS server, web UI, optional DHCP)Internal onlypprof debug API (off by default); never publish—
9000/tcpauthentikauthentik server (web UI, API, flows, embedded outpost)Public, through a proxyWeb UI, API, SSO endpoints and embedded proxy outpost (HTTP; put behind TLS)Mealie, Portainer CE, Woodpecker CI, Keycloak, Plausible Community Edition
9443/tcpauthentikauthentik server (web UI, API, flows, embedded outpost)Internal onlyHTTPS listener with a self-signed certificate; unused when TLS ends at the proxyPortainer CE
9300/tcpauthentikauthentik server (web UI, API, flows, embedded outpost)Internal onlyPrometheus metrics of the server, without authentication—
9000/tcpauthentikauthentik worker (background tasks)Internal onlyWorker health endpoint (/-/health/ready/)Mealie, Portainer CE, Woodpecker CI, Keycloak, Plausible Community Edition
9300/tcpauthentikauthentik worker (background tasks)Internal onlyPrometheus metrics of the worker (task counts and durations)—
5432/tcpauthentikPostgreSQLInternal onlyPostgreSQL connections, task queue and LISTEN/NOTIFY of server and workern8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, Keycloak, Plausible Community Edition, Umami
8080/tcpKeycloakKeycloak serverPublic, through a proxyLogin pages, OIDC/SAML endpoints, Admin Console and Admin API (HTTP; TLS at the proxy)Coolify, Dify, Open WebUI, SearXNG, LocalAI
9000/tcpKeycloakKeycloak serverInternal onlyManagement interface: /health and /metrics; never expose itMealie, Portainer CE, Woodpecker CI, authentik, Plausible Community Edition
7800/tcpKeycloakKeycloak serverInternal onlyJGroups unicast transport of the ispn caches (jdbc-ping stack)—
57800/tcpKeycloakKeycloak serverInternal onlyJGroups failure detection (FD_SOCK2, bind port + 50000)—
5432/tcpKeycloakPostgreSQLInternal onlyPostgreSQL connections from Keycloak (also its jdbc-ping node registry)n8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Plausible Community Edition, Umami
8000/tcpPlausible Community EditionPlausible (web app and event ingestion)Public, through a proxyDashboard, tracking script, event API (/api/event) and Stats API (HTTP; put behind TLS)Paperless-ngx, Portainer CE, Woodpecker CI, LibreChat
5432/tcpPlausible Community EditionPostgreSQLInternal onlyPostgreSQL connections from Plausible (accounts, sites, job queue)n8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Umami
8123/tcpPlausible Community EditionClickHouse (analytics events)Internal onlyClickHouse HTTP interface: Plausible writes and queries events hereHome Assistant
9000/tcpPlausible Community EditionClickHouse (analytics events)Internal onlyClickHouse native protocol (clickhouse-client); not used by PlausibleMealie, Portainer CE, Woodpecker CI, authentik, Keycloak
9004/tcpPlausible Community EditionClickHouse (analytics events)Internal onlyClickHouse MySQL wire protocol, on by default; not used by Plausible—
9005/tcpPlausible Community EditionClickHouse (analytics events)Internal onlyClickHouse PostgreSQL wire protocol, on by default; not used by Plausible—
9009/tcpPlausible Community EditionClickHouse (analytics events)Internal onlyClickHouse interserver replication port; unused on a single node—
3000/tcpUmamiUmami (dashboard, API, tracker and collector)Public, through a proxyDashboard, API, tracker script and the /api/send collector (HTTP; put behind TLS)Dify, Gitea, Paperless-ngx, Outline, Linkwarden, Grafana, Woodpecker CI, Flowise, AdGuard Home
5432/tcpUmamiPostgreSQLInternal onlyPostgreSQL connections from Umamin8n, PostgreSQL, Dify, Gitea, Nextcloud, Immich, Paperless-ngx, Outline, Mealie, Linkwarden, Grafana, Mattermost, Flowise, Langflow, LibreChat, Activepieces, authentik, Keycloak, Plausible Community Edition
2368/tcpGhostGhost (web, Admin and APIs)Public, through a proxySite, members area, Admin (/ghost) and the Content and Admin APIs (HTTP; put behind TLS)—
3306/tcpGhostMySQLInternal onlyMySQL client protocol for GhostWordPress, BookStack

Each app's page has the sources of its ports.

Ports that more than one app uses

The same port number and protocol in two or more apps. Running those apps on one server is still possible; this says what to change.

  • 80/tcp Clash if published directly

    Coolify (Public, through a proxy), Dify (Public, through a proxy), WordPress (Public, through a proxy), Nextcloud (Public, through a proxy), Vaultwarden (Public, through a proxy), BookStack (Public, through a proxy), Activepieces (Public, through a proxy), AdGuard Home (Public, through a proxy)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 443/tcp Clash if published directly

    Coolify (Public, through a proxy), Dify (Public, through a proxy), BookStack (Internal only), AdGuard Home (Public, through a proxy)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 443/udp Clash if published directly

    Coolify (Public, through a proxy), BookStack (Internal only), AdGuard Home (Public, through a proxy)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 3000/tcp Clash if published directly

    Dify (Internal only), Gitea (Public, through a proxy), Paperless-ngx (Internal only), Outline (Public, through a proxy), Linkwarden (Public, through a proxy), Grafana (Public, through a proxy), Woodpecker CI (Internal only), Flowise (Public, through a proxy), AdGuard Home (Internal only), Umami (Public, through a proxy)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 3001/tcp Clash if published directly

    Uptime Kuma (Public, through a proxy), AnythingLLM (Public, through a proxy)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 3306/tcp Same number, no clash while internal

    WordPress (Internal only), BookStack (Internal only), Ghost (Internal only)

    At most one of these apps exposes the port; the others keep it inside their own stack. Don't publish the internal ones to the host.

  • 5432/tcp Same number, no clash while internal

    n8n (Internal only), PostgreSQL (Internal only), Dify (Internal only), Gitea (Internal only), Nextcloud (Internal only), Immich (Internal only), Paperless-ngx (Internal only), Outline (Internal only), Mealie (Internal only), Linkwarden (Internal only), Grafana (Internal only), Mattermost (Internal only), Flowise (Internal only), Langflow (Internal only), LibreChat (Internal only), Activepieces (Internal only), authentik (Internal only), Keycloak (Internal only), Plausible Community Edition (Internal only), Umami (Internal only)

    At most one of these apps exposes the port; the others keep it inside their own stack. Don't publish the internal ones to the host.

  • 6379/tcp Same number, no clash while internal

    n8n (Internal only), Dify (Internal only), WordPress (Internal only), Nextcloud (Internal only), Immich (Internal only), Paperless-ngx (Internal only), Outline (Internal only), Valkey (Internal only), Activepieces (Internal only)

    At most one of these apps exposes the port; the others keep it inside their own stack. Don't publish the internal ones to the host.

  • 7700/tcp Same number, no clash while internal

    Linkwarden (Internal only), LibreChat (Internal only)

    At most one of these apps exposes the port; the others keep it inside their own stack. Don't publish the internal ones to the host.

  • 8000/tcp Clash if published directly

    Paperless-ngx (Public, through a proxy), Portainer CE (Public, through a proxy), Woodpecker CI (Public, through a proxy), LibreChat (Internal only), Plausible Community Edition (Public, through a proxy)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 8080/tcp Clash if published directly

    Coolify (Public, through a proxy), Dify (Internal only), Open WebUI (Public, through a proxy), SearXNG (Public, through a proxy), LocalAI (Public, through a proxy), Keycloak (Public, through a proxy)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 8123/tcp Same number, no clash while internal

    Home Assistant (Public, through a proxy), Plausible Community Edition (Internal only)

    At most one of these apps exposes the port; the others keep it inside their own stack. Don't publish the internal ones to the host.

  • 9000/tcp Clash if published directly

    Mealie (Public, through a proxy), Portainer CE (Internal only), Woodpecker CI (Internal only), authentik (Public, through a proxy), Keycloak (Internal only), Plausible Community Edition (Internal only)

    At least two of these apps expose the port publicly. Only one can bind it on the host: put the apps behind one reverse proxy, or publish one of them on a different host port.

  • 9443/tcp Same number, no clash while internal

    Portainer CE (Public, through a proxy), authentik (Internal only)

    At most one of these apps exposes the port; the others keep it inside their own stack. Don't publish the internal ones to the host.

Sources

All self-hosted apps