Docker Workshop

Docker workshop: from installing Docker to Compose, Portainer and Caddy

Start reading
episodes
17 Episodes
  1. 01InstallationThai onlyChoose a container runtime for your machine: Docker Desktop, OrbStack, Podman or containerd.
  2. 02What & Why?Thai onlyWhat Docker is and why to use it: bare metal compared with Docker, portability, security, performance and scaling.
  3. 03Docker conceptsThai onlyDocker architecture and objects: Dockerfile, images, containers, the daemon, the client and registries.
  4. 04Docker Basic CommandsThai onlyDocker basic commands: pull and delete images, create, start, stop and inspect containers, expose ports.
  5. 05Hands-on Website CSR React + Vite + TSThai onlyCreate a React + Vite + TS app, build and serve it, then write a Dockerfile and .dockerignore and build the image.
  6. 06Multi-stage Dockerfile for React + Vite + TSThai onlyMake the React image smaller with a multi-stage Dockerfile: a build stage and a final stage.
  7. 07Hands-on Backend using HonoThai onlyBuild a Hono backend with upload and static file routes, then write its Dockerfile and run it in a container.
  8. 08VolumesThai onlyKeep uploaded files when a container is deleted, by binding a folder of the host as a volume.
  9. 09Hands-on SSR using NextThai onlyBuild a Next.js SSR app, write its Dockerfile, run the container and fix the connection to the backend.
  10. 10Docker networkThai onlyDocker networks: create a network, connect containers to it and let them talk to each other.
  11. 11Docker composeThai onlyDescribe services in a compose.yaml, run them with Docker Compose, add services and use compose networks.
  12. 12Docker compose restart policyThai onlyRestart policy and health checks for Docker Compose services.
  13. 13Postgres exampleThai onlyA compose.yaml for a Postgres database.
  14. 14PortainerThai onlyPortainer, a web dashboard for Docker, installed with docker run or with Compose.
  15. 15CaddyThai onlyCaddy as a reverse proxy with automatic TLS: the Caddyfile and the compose file.
  16. 16Non-root user (Rootless)Thai onlyRun containers as a non-root user: UID and GID, with the Next.js and Hono Dockerfiles.
  17. 17PruneThai onlyFree disk space with docker prune: images, containers, volumes, networks and the whole system.