Find us on social media
DockerContainersDocker Compose6 min read
Install Docker and Docker Compose
Install Docker Engine and Docker Compose to run applications in isolated containers.
Docker lets you run applications in isolated containers. This guide covers installation from the official Docker repository for Ubuntu and Debian.
Step 1 — Remove old versions
bash
sudo apt remove docker docker-engine docker.io containerd runc 2>/dev/nullStep 2 — Install prerequisites
bash
sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release -yStep 3 — Add Docker's official GPG key
bash
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.gpgStep 4 — Add the repository
bash
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullStep 5 — Install Docker Engine
bash
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -yStep 6 — Verify the installation
bash
sudo docker run hello-worldStep 7 — Run Docker without sudo
bash
sudo usermod -aG docker $USER
newgrp dockerLog out and back in for the change to take effect.
Step 8 — Test Docker Compose
bash
docker compose versionBasic Docker commands
bash
docker ps # List running containers
docker ps -a # List all containers
docker images # List images
docker pull nginx # Download an image
docker run -d -p 80:80 nginx # Run Nginx in background
docker stop <container_id> # Stop a container
docker rm <container_id> # Remove a containerEnable Docker on boot
bash
sudo systemctl enable docker
sudo systemctl enable containerdTip
For production deployments, use Docker Compose files to define multi-container applications. Store your docker-compose.yml in version control for reproducible deployments on your Baires Host VPS.
Was this guide helpful?