Skip to content

Lab 6 - Containers: Dockerize QuickNotes#1106

Open
giselesikeh wants to merge 5 commits into
inno-devops-labs:mainfrom
giselesikeh:feature/lab6
Open

Lab 6 - Containers: Dockerize QuickNotes#1106
giselesikeh wants to merge 5 commits into
inno-devops-labs:mainfrom
giselesikeh:feature/lab6

Conversation

@giselesikeh

Copy link
Copy Markdown

Goal

Complete Lab 6 by Dockerizing QuickNotes with a multi-stage image, Compose workflow, persistent volume, healthcheck, and security hardening.

Changes

  • Added app/Dockerfile with a multi-stage Go build.
  • Added a static healthcheck binary under app/cmd/healthcheck.
  • Added root-level compose.yaml for QuickNotes.
  • Added submissions/lab6.md with build evidence, image size, runtime tests, persistence test, design answers, and bonus security verification.

Testing

Verified locally:

  • Built quicknotes:lab6.
  • Confirmed final image size is 22.8 MB, below the 25 MB limit.
  • Confirmed the image runs as nonroot:nonroot.
  • Confirmed /health and /notes work.
  • Confirmed Docker Compose reports the service as healthy.
  • Confirmed named volume persistence across docker compose down && docker compose up.
  • Confirmed volume removal after docker compose down -v.
  • Verified hardening settings with docker inspect.
  • Ran Trivy scan and documented results.

Checklist

  • One lab on one branch
  • app/Dockerfile added
  • compose.yaml added at repo root
  • submissions/lab6.md added
  • Commit is signed

Signed-off-by: giselesikeh <giselesikeh17@gmail.com>
Signed-off-by: giselesikeh <giselesikeh17@gmail.com>
Signed-off-by: giselesikeh <giselesikeh17@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant