Network /

Configure ports

You can expose multiple ports on a single deployment, public and private, and link each public port with custom subdomains.

You can add ports manually, or detect ports exposed by your Dockerfile. Ports can be added while creating your deployment, or afterwards from the ports & DNS page on deployment and combined services.

You can use any port number from 1 to 65535.

In the port editor you can toggle the DNS view to see either public or private port domain names.

Public ports

Public Northflank domain names, available online and used to associate with your own domain names, take the format:


Public ports can only use HTTP.

Public ports can be linked to your own subdomain.

Private ports

Private Northflank domain names, to be used internally by other Northflank services, take the format:


Private ports allow services in the same project to communicate with each other. You can access the port within the project by using the internal domain name.

Private ports can use HTTP, TCP, or UDP.

Detect ports

When you create a new deployment Northflank will scan the image manifest and attempt to identify and add the ports exposed by the image. You can also detect ports from the ports & DNS page on a service. You should always verify that the ports are correct for your deployment.

You can expose ports in your Dockerfile in the following ways:

# HTTP port (public by default)
# TCP port (private)
EXPOSE 2121/tcp
# UDP port (private)
EXPOSE 7171/udp

Manually edit ports

You can edit ports on your deployment's ports & dns page.

You must give each port in your service a unique name. Your port name will be used to create your Northflank generated domain.

© 2022 Northflank Ltd. All rights reserved.