~/CloudSetup.In

Docker

Containers Dockerfile ● stable

Build, ship, and run applications in isolated containers.

01 Overview

Docker packages an application and its dependencies into a portable container image that runs the same way on a laptop, a CI runner, or a production node. It's the base layer most container and orchestration tooling (Kubernetes, Compose, ECS) is built on top of.

→ official documentation

02 Installation

Pick a platform. Each step is copy-pasteable on its own.

01  Remove old versions
sudo apt-get remove docker docker-engine docker.io containerd runc
02  Set up the apt repository
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
03  Add the repository to Apt sources
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
04  Install Docker Engine
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
05  Verify
sudo docker run hello-world
01  Remove old versions
sudo dnf remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
02  Add the repository
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
03  Install Docker Engine
sudo dnf install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
04  Enable and start the service
sudo systemctl enable --now docker
05  Verify
sudo docker run hello-world
01  Install via Homebrew
brew install --cask docker
02  Launch Docker Desktop once to finish setup
open /Applications/Docker.app
03  Verify
docker run hello-world
Note — commands assume sudo privileges and an up-to-date package index. Pin a specific version in production rather than tracking latest.

03 Install script

The steps above bundled into a single idempotent shell script for provisioning boxes unattended.

install-docker.sh
Ubuntu/Debian target · safe to re-run · exits non-zero on failure
↓ download script

04 Cheatsheet

The commands reached for most often once Docker is installed.

CommandWhat it does
docker psList running containers
docker ps -aList all containers, including stopped
docker imagesList local images
docker build -t name:tag .Build an image from a Dockerfile
docker run -d -p 8080:80 nameRun a container in the background with a port mapped
docker exec -it <id> shOpen a shell inside a running container
docker logs -f <id>Stream a container's logs
docker system prune -aRemove unused images, containers, and networks
docker compose up -dStart services defined in compose.yaml