/37c3-container-workshop

A project for learning about containers during 37c3

Primary LanguageTypeScriptThe UnlicenseUnlicense

37c3 Introductory Workshop to Containers!

Introduction

This is a little example project for workshop attendees during the 37c3, no serious project.

Unfortunately none of its parts are containerized, although it's multiple components could wrapped up be so easily!

Although the tutorial is meant to be used with Docker, feel free to take this as a little challenge for getting familiar with a container engine of your choice.

If you are already familiar with containers in general you may skip through and complete the same exercises with any other engine to get familiar. It should touch on a bunch of common concepts like image building, persistent storage, networking, etc to test your knowledge.

If you are just starting out on your container journey, I recommend sticking with Docker for now and closely follow the tutorial with it's linked resources.

The application

The example project is a little chat web application (with the typical butt load of dependencies).

It consists out of:

  • A little frontend written with the Preact framework, build with npm and vite
  • A little backend written in Typescript with Hono running on the deno runtime
  • The way it is setup it also requires
    • A Postgres server to persist the chat log
    • A Nginx server setup to serve the frontend and proxy to the backend

Table of Contents

  1. Setting up your environment
  2. Your first container
  3. Volumes & Network
  4. Creating your own Image & Compose
  5. Docker-Compose
  6. More yaks to shave

License

This work is licensed under The UNLICENSE. Do what you want with it!