User Tools

Site Tools


docker:install_docker

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
docker:install_docker [2019/11/27 01:05] – removed peterdocker:install_docker [2025/06/07 16:56] (current) peter
Line 1: Line 1:
 +====== Docker - Install Docker ======
 +
 +===== Prerequisites =====
 +
 +<WRAP alert>
 +**ALERT:**  Docker is only compatible with **iptables** and **ip6tables**.
 +
 +  * Docker is NOT compatible with **ufw**.
 +  * See:  https://docs.docker.com/engine/network/packet-filtering-firewalls/
 +
 +</WRAP>
 +
 +----
 +
 +===== Uninstall old versions =====
 +
 +<code bash>
 +for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt remove $pkg; done
 +</code>
 +
 +<WRAP info>
 +**NOTE:**  Images, containers, volumes, and networks stored in **/var/lib/docker/** are not automatically removed when you uninstall Docker.
 +
 +  * To start with a clean installation, to clean up any existing data, read the [[https://docs.docker.com/engine/install/ubuntu/#uninstall-docker-engine|uninstall Docker Engine section]].
 +
 +</WRAP>
 +
 +
 +To delete all images, containers, and volumes:
 +
 +<code bash>
 +sudo rm -rf /var/lib/docker
 +sudo rm -rf /var/lib/containerd
 +</code>
 +
 +Remove source list and keyrings
 +
 +<code bash>
 +sudo rm /etc/apt/sources.list.d/docker.list
 +sudo rm /etc/apt/keyrings/docker.asc
 +</code>
 +
 +<WRAP info>
 +**NOTE:**  Any edited configuration files will need to be deleted manually.
 +</WRAP>
 +
 +
 +----
 +
 +===== Set up the Docker apt repository =====
 +
 +<code bash>
 +# Add Docker's official GPG key:
 +sudo apt update
 +sudo apt install ca-certificates curl
 +sudo install -m 0755 -d /etc/apt/keyrings
 +sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
 +sudo chmod a+r /etc/apt/keyrings/docker.asc
 +
 +# Add the repository to Apt sources:
 +echo \
 +  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
 +  $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \
 +  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
 +sudo apt update
 +</code>
 +
 +----
 +
 +===== Install the Docker packages =====
 +
 +<code bash>
 +sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
 +</code>
 +
 +<WRAP info>
 +**NOTE:**
 +
 +  * **docker-ce** - The Docker engine itself.
 +  * **docker-ce-cli** - A command line tool that lets you talk to the Docker daemon.
 +  * **containerd.io** - A container runtime that manages the container’s lifecycle.
 +  * **docker-buildx-plugin** - This extension for Docker enhances the capabilities of building images, mainly focusing on multi-platform builds.
 +  * **docker-compose-plugin** - A configuration management plugin that helps manage multi-container Docker applications using a single YAML file.
 +
 +</WRAP>
 +
 +----
 +
 +===== Verify that the installation is successful =====
 +
 +<code bash>
 +sudo docker run hello-world
 +</code>
 +
 +returns:
 +
 +<code>
 +Unable to find image 'hello-world:latest' locally
 +latest: Pulling from library/hello-world
 +e6590344b1a5: Pull complete 
 +Digest: sha256:0b6a027b5cf322f09f6706c754e086a232ec1ddba835c8a15c6cb74ef0d43c29
 +Status: Downloaded newer image for hello-world:latest
 +
 +Hello from Docker!
 +This message shows that your installation appears to be working correctly.
 +
 +To generate this message, Docker took the following steps:
 + 1. The Docker client contacted the Docker daemon.
 + 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
 +    (amd64)
 + 3. The Docker daemon created a new container from that image which runs the
 +    executable that produces the output you are currently reading.
 + 4. The Docker daemon streamed that output to the Docker client, which sent it
 +    to your terminal.
 +
 +To try something more ambitious, you can run an Ubuntu container with:
 + $ docker run -it ubuntu bash
 +
 +Share images, automate workflows, and more with a free Docker ID:
 + https://hub.docker.com/
 +
 +For more examples and ideas, visit:
 + https://docs.docker.com/get-started/
 +</code>
 +
 +<WRAP info>
 +**NOTE:**  This downloads a test image and runs it in a container.
 +
 +  * When the container runs, it prints a confirmation message and exits.
 +
 +  * If the command fails to run, try to restart the docker service, before rerunning this test: <code bash>
 +sudo systemctl restart docker.service
 +</code>
 +
 +</WRAP>
 +
 +----
 +
 +===== Uninstall Docker Engine =====
 +
 +<code bash>
 +sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
 +</code>
 +
 +Then, manually remove the following two directories:
 +
 +<code bash>
 +sudo rm -rf /var/lib/docker
 +sudo rm -rf /var/lib/containerd
 +</code>
 +
 +----
 +
 +===== References =====
 +
 +https://docs.docker.com/engine/install/ubuntu/
 +
 +https://docs.docker.com/engine/install/ubuntu/#uninstall-docker-engine
 +
 +https://docs.docker.com/engine/network/packet-filtering-firewalls/
  
docker/install_docker.1574816751.txt.gz · Last modified: 2020/07/15 09:30 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki