Skip to main content

Opening Ports

Sessions provide flexible port configuration options to support various application types and development workflows.

Default Port Access

Port 3000 is automatically open for every Session. When you create an application running on port 3000 (for example, a NextJS app in development mode), you can access it via:

https://nextjs-<first-6-chars-of-session-id>.YOUR-DOMAIN.TLD

Replace <first-6-chars-of-session-id> with the first 6 characters of your Session ID, and YOUR-DOMAIN.TLD with your Shakudo deployment domain.

note

In code-server (VS Code), when you have an application listening on port 3000, you will see a popup notification that provides a link to access your dashboard directly.

Code-server Port 3000 Popup

Adding Additional Ports

Available on Shakudo version 3.52.0+

Starting in version 3.52.0, you can add additional ports to your Session even after the Session has been created. This allows you to expose multiple services or applications from a single Session.

How to Add Ports

  1. Navigate to the Sessions table in your Shakudo console
  2. Locate your Session and click the dropdown menu on the right side under the "Actions" column
  3. Select Add Ports from the dropdown menu
  4. In the modal that appears, you will see:
    • Currently Open Ports: Displays all ports that are currently exposed for your Session
    • Add New Ports: An input field where you can add additional ports

Add Ports Modal

  1. Type your desired port number (between 3000-9999) in the input field
  2. Press Enter to add the port to the list
  3. Repeat steps 5-6 to add multiple ports if needed
  4. Click Submit to apply the changes
note

The port range is restricted to 3000-9999. If you need to expose a service running on a different port, you can configure your application to use a port within this range.

Accessing Your Applications

Once ports are added to your Session, you can access applications running on those ports using the following URL pattern:

https://nextjs-<first-6-chars-of-session-id>-<port>.YOUR-DOMAIN.TLD

For example, if your Session ID starts with 16231a and you've added port 8888, you would access your application at:

https://nextjs-16231a-8888.YOUR-DOMAIN.TLD

Replace <first-6-chars-of-session-id> with the first 6 characters of your Session ID, <port> with the port number, and YOUR-DOMAIN.TLD with your Shakudo deployment domain.