Extra apps & ports
The Extra apps section, under Manage workspace on the workspace detail page, lets you expose services that aren’t built-in launchers. Each gets its own link behind your session cookie.
How it works
Section titled “How it works”When you declare a port, LabPod reserves a port number from a pool and maps it through the
reverse proxy. You then start your app inside the workspace and bind it to that port. LabPod
serves it at /ws/<workspace-id>/_user/<name>/.
User-declared ports and built-in launchers use separate URL namespaces. A user app can therefore
have the same name as a launcher without a conflict: /ws/<workspace-id>/_user/jupyter/ is the
user app, while /ws/<workspace-id>/jupyter/ is the launcher. Old untyped user-port
bookmarks are not aliases; create or open the app from the workspace page to get the typed URL.
The link works immediately once you click Add app - you don’t need to restart the workspace. Port declarations survive stop/start; LabPod re-wires the proxy when the workspace starts again.
Adding an app
Section titled “Adding an app”- On the workspace detail page, open Manage workspace → Extra apps and click Add app.
- Pick a preset (TensorBoard, Gradio, Streamlit, FastAPI) or type a custom name.
- Names must be lowercase letters, digits, and dashes (e.g.
gradio,my-app).
- Names must be lowercase letters, digits, and dashes (e.g.
- Click Add.
LabPod shows the link immediately:
http://<host>:<port>/ws/<workspace-id>/_user/<name>/.
Starting your app inside the workspace
Section titled “Starting your app inside the workspace”Open the LabPod Terminal and start your app bound to the port LabPod assigned. You can find
the port number from the workspace detail page, or read it from the environment variable
$LABPOD_USER_PORT_<n> (where <n> is the slot index shown in the Advanced section of the
Add app dialog).
For example, to run a Gradio app on the assigned port:
python app.py --server-port $LABPOD_USER_PORT_1For Streamlit:
streamlit run app.py --server.port $LABPOD_USER_PORT_1Then click Open in the Extra apps card to load it in a new browser tab.
Automatic detection
Section titled “Automatic detection”If you start an app inside the workspace without declaring a port first, LabPod may notice it listening and list it under Apps running in your workspace with the port number and the process command. Click Open there and LabPod assigns a free pool slot that forwards to it - no manual Add app dialog or port entry needed. This only helps once the app is already listening; declare the port yourself first if you’d rather bind to LabPod’s assigned port from the start.
Limits
Section titled “Limits”- You can have up to 8 extra apps per workspace (the pool size).
- If all slots are in use, the Add app button is disabled until you delete one.
- Port declarations are per-workspace. A different workspace has its own pool.
Deleting an app
Section titled “Deleting an app”Click Delete on the app card. The port is returned to the pool. The app process inside the workspace keeps running until you stop it yourself.