Challengejenkins
Jenkins Fundamentals & Role-Based Access — Challenge
Run Jenkins in a container, build a job from a webhook, and stop every authenticated user being an administrator.
- Time
- 25 min
- Level
- Beginner
- Objectives
- 4 objectives
- Cost
- Free
Before you start
You will need
- Docker
- Docker Compose
You will be able to
- Run Jenkins reproducibly with persistent state
- Trigger a build from a push rather than a button
- Grant permissions by role rather than to everyone
You are done when
0 of 4
The goal#
Achieve the same outcome as Jenkins Fundamentals & Role-Based Access, from an empty starting point, without the steps.
Jenkins out of the box gives every authenticated user broad permissions, and its state lives inside a container that will be replaced.
Neither is acceptable, and both are fixed before writing a single pipeline.
What must be true when you are done#
- Jenkins is running with its home directory on a named volume, surviving a container restart.
- A job builds automatically when a commit is pushed.
- Two users exist: one administrator, one read-only, verified by logging in as each.
- The read-only user cannot start a build — demonstrated, not assumed.
Rules#
- Do not open the guided lab until you are finished, or until the same problem has held you up for 20 minutes.
- Documentation is allowed and encouraged.
- Verify every criterion with a command whose output you can read.
If you get stuck#
- What did you expect, exactly?
- What happened instead — the error text, not a paraphrase?
- Which layer is that error from?
- What is the smallest command that proves the layer below is fine?
The concept behind it
Next up
Lab 44 of 58 on the project path