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

One entrance, different responsibilities

A proxy forwards requests. HTTPS protects transport; neither creates mission-editing permissions by itself.

Learning paths30 min

Let's discover together

  1. 1

    Optional extension with Caddy installed: read deploy/Caddyfile.lab. It uses local HTTP at 127.0.0.1:3011, without certificates or an admin API. This file must not replace an existing server’s Caddyfile.

  2. 2

    Check that 3011 is free in your lab. Run caddy fmt --diff and caddy validate using the path below. Validation detects configuration problems; it does not yet prove the upstream responds.

  3. 3

    Keep the board on 3010 and run caddy run in another terminal without installing a service. Open http://127.0.0.1:3011 and create a fictional mission. The kit explicitly allows this local origin; other origins remain refused.

  4. 4

    Stop only the board and repeat the request through the proxy: an upstream error shows that Caddy and application are separate processes. Restart the board, verify the mission and finish both with Ctrl+C.

  5. 5

    A public domain requires DNS and appropriate TLS configuration, plus authentication, authorization, abuse protection and data handling. This kit does not deliver all those protections. Finish with private local publication; do not buy a domain or expose this board’s writes.

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.

caddy fmt --diff deploy/Caddyfile.lab
caddy validate --config deploy/Caddyfile.lab --adapter caddyfile
caddy run --config deploy/Caddyfile.lab --adapter caddyfile
My evidence record

Draw browser → Caddy 3011 → board 3010 → database. Record a failure with the upstream stopped, or mark the analysis as not executed. List two protections needed before public writes.

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

Validate a local proxy and explain what remains before public deployment.

Now it's your turn

Discovery workshop

Decide using evidence

Configuration passed validation, but the board was stopped. A request through the proxy failed.
Build your answers and check when you are ready.
A moment to understand

Does a valid certificate make the board ready for public personal data?

I need a hint

The local proxy demonstrates forwarding, not public HTTPS deployment. File validation and a successful request are different evidence.

Loading your journey…

Take it with you

Draw browser → Caddy 3011 → board 3010 → database. Record a failure with the upstream stopped, or mark the analysis as not executed. List two protections needed before public writes.

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.