Skip to content

How to open your apps

Every web address for your lab looks like this:

https://<name>-lab<NNNN>.labs.decoded.com
        └────┘ └──────┘
        the app  your computer
  • <name> says which app you want — a short name from the list below, or a port number (explained below).
  • lab<NNNN> is your computer. It's the number from the addresses your instructor gave you, and it stays the same.
  • It always starts with https:// (the secure kind). If you type http://, it switches you to https:// automatically.

What's a port?

A computer runs many programs at once, so each one uses a numbered "door" called a port — like extension numbers behind one phone line. Port 5000, port 8000, and so on are just different programs on the same lab computer. You choose a port for your app, and the web address tells the gateway which one to connect you to.

Ready-made names

So you don't have to remember port numbers:

Open this address Goes to port Use it for
app-lab1234.labs.decoded.com 5000 Your main app
app1- … app5-lab1234… 5001 – 5005 More apps, side by side
svc-lab1234… 8100 A service / API
svc1- … svc5-lab1234… 8101 – 8105 More services
code-lab1234… 8001 code-server (VS Code in the browser)
nb-lab1234… 8002 Jupyter Lab
gui-lab1234… 8003 Desktop / GUI
web-lab1234… 80 A web server on port 80

app and app0 are the same thing (port 5000); so are svc / svc0 (8100).

Using any other port

If your app uses a port that isn't in the list, just put the number where the name goes:

https://8501-lab1234.labs.decoded.com     →  your app on port 8501
https://3000-lab1234.labs.decoded.com     →  your app on port 3000

Pick a port between 2000 and 9000

The number form works for any port from 2000 to 9000. If your tool uses a number outside that range, change it to one inside.

Also leave 8001, 8002, 8003, 8005, 80 and 22 alone unless you mean to — those names already point at built-in tools (code-server, Jupyter, the desktop, the hub, a port-80 site, and SSH). For your own app, the safe picks are app/app1… (5000–5005), svc/svc1… (8100–8105), or a free number like 3000 or 8501.

Good to know

  • You can run several apps at once. app-lab1234…, svc-lab1234… and 8501-lab1234… are independent — open each in its own tab.
  • The plain address lab1234.labs.decoded.com (no name in front) shows your lab's home page, which lists these shortcuts for your computer.
  • A name it doesn't recognise just sends you back to that home page.
  • "Nothing on port N"? The address is right, but no app answered there — either it isn't running yet, or it's still in private mode. That's exactly what Run your own app fixes.
The technical version (optional)

The address is <prefix>-lab<NNNN>. The prefix is a named shortcut or a raw port (the routable range is 2000–9000); the gateway maps it to that port on your VM and proxies straight through at /. A bare lab<NNNN> host serves the landing page; an unrecognised prefix 302-redirects there. Everything is HTTPS on 443, and http:// is 301-redirected to https://.

What this means for your app

Because the gateway connects to your app from outside, your app has to (1) accept outside connections, (2) use a port in range, and (3) expect a secure address — the three things the next page walks you through.