Rullst AcademyRullst Academy/Lesson
From application to release with Rullst · Lesson 04 / 12

Follow the request path

A port is an entry point for a process. Before opening any access, find out who is listening and on which address.

Learning paths25 min

Let's discover together

  1. 1

    With MB_MODE=local the kit listens on 127.0.0.1:3010. This address points to the requesting machine itself, not any computer on the internet. Open /readyz at this URL.

  2. 2

    In another terminal, try starting the same kit on the same port. Observe the address-in-use error. End the second attempt; keep the first server. Do not stop unknown processes to free the port.

  3. 3

    If the first attempt already found an occupied port, choose another lab environment or get help identifying your own process. Changing the number requires aligning listener, allowed origins, proxy and instructions.

  4. 4

    In a container, MB_MODE=container listens on 0.0.0.0 inside it to receive Podman forwarding. Host publication remains 127.0.0.1:3010:3010. Use this mode only in that isolated lab.

  5. 5

    Draw browser → host address → process. Local access reduces network exposure but is not authentication. Do not open a firewall or use a public tunnel for this exercise.

From reasoning to execution

The core path runs on your computer with fictional data. Podman, Quadlet and Caddy are optional extensions; no domain purchase or cloud subscription is needed. This lab is not ready for public writes.

Read the steps before running anything. The commands below are a reference; README.md explains your OS syntax and LAB.md contains the sequence. The site does not run these commands for you.

cargo run --locked -- serve
My evidence record

Record the responding URL, the second instance’s error and a drawing of the request path. Explain why 127.0.0.1 on another computer does not access your kit.

Separate prediction, execution and observed result. Record “not executed” when the environment is missing. Site progress does not validate real deployment or grant professional certification.

My files and GitHub

Official links and next step

✦
YOUR MISSION

Distinguish loopback, an occupied port and a container’s internal address.

Now it's your turn

Discovery workshop

Decide using evidence

Proposed publication: -p 3010:3010. Guide publication: -p 127.0.0.1:3010:3010.
Build your answers and check when you are ready.
A moment to understand

The second run failed with address in use. What should you do?

I need a hint

The conflict is in the listener, not the data. Internal and external ports may share a number without being the same network boundary.

Loading your journey…

Take it with you

Record the responding URL, the second instance’s error and a drawing of the request path. Explain why 127.0.0.1 on another computer does not access your kit.

At your own pace

My files and GitHub

Every lesson can become your own record: code, notes or a practice plan. Saving a file to GitHub is optional and does not change your XP.

Student guide

The editor and downloads open when this lesson is available to your account. Check access below or return to the track map.

Checking your access to this lesson…

Rullstpetbot

AI can make mistakes. Check the lesson material.