Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
Skip to content
World desk4 min

How to Install Docker Engine on Debian and Verify It Works

Set up Docker Engine on Debian 12 or 13 from Docker’s signed APT repository, then verify the service and test container while avoiding common data, firewall, and privilege pitfalls.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a standard Debian host, install Docker Engine from Docker’s signed APT repository. The process is to check release and architecture support, remove conflicting packages without deleting stored Docker data, configure the repository, install the Engine and companion tools, then verify the daemon and run a test container.

Check that your Debian release and architecture are supported

Docker’s Debian installation page currently lists Debian 13 (Trixie, stable) and Debian 12 (Bookworm, oldstable). Supported architectures are x86_64/amd64, armhf/arm/v7, arm64, and ppc64le/ppc64el. Check Docker’s Debian installation instructions if you are using another release, architecture, or a Debian derivative.

As an Amazon Associate I earn from qualifying purchases.

To see your host’s release codename and package architecture, run:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
. /etc/os-release
printf '%sn' "$VERSION_CODENAME"
dpkg --print-architecture

Docker notes that testing releases and derivatives such as Kali may require you to enter the codename of the corresponding Debian release explicitly when configuring the repository.

#1 Best Overall

Remove conflicting packages without erasing Docker data

Docker lists these packages as potential conflicts with its official packages: docker.io, docker-compose, docker-doc, docker-buildx, podman-docker, containerd, and runc. If any are installed, remove them before proceeding:

sudo apt remove docker.io docker-compose docker-doc docker-buildx podman-docker containerd runc

APT may report that some named packages are not installed; that is fine. Docker’s containerd.io package supplies containerd and runc for this installation. Removing packages does not automatically remove images, containers, volumes, or networks in /var/lib/docker/. Do not delete that directory unless you intend to erase Docker data.

Configure Docker’s signed APT repository

This setup uses the host’s Debian codename and package architecture so APT retrieves packages for the correct release and platform.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Refresh APT and install the tools needed to retrieve and verify the repository key:

    sudo apt update
    sudo apt install ca-certificates curl
  2. Create APT’s keyring directory, download Docker’s Debian signing key, and make it readable:

    sudo install -m 0755 -d /etc/apt/keyrings
    sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
    sudo chmod a+r /etc/apt/keyrings/docker.asc
  3. Add Docker’s repository using the system codename and architecture:

    echo "Types: deb
    URIs: https://download.docker.com/linux/debian
    Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
    Components: stable
    Architectures: $(dpkg --print-architecture)
    Signed-By: /etc/apt/keyrings/docker.asc" | sudo tee /etc/apt/sources.list.d/docker.sources > /dev/null
  4. Refresh package metadata so APT can see Docker’s packages:

    Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
    sudo apt update

Install Docker Engine, CLI, Buildx, and Compose

Install the current versions available from the configured repository:

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

This installs Docker Engine, its command-line interface, the container runtime package, and the Buildx and Compose CLI plugins. Repository versions vary by Debian release and architecture. If you need a pinned version, follow Docker’s Debian instructions to list available docker-ce versions, then install the matching docker-ce and docker-ce-cli version alongside containerd.io, docker-buildx-plugin, and docker-compose-plugin.

Verify that the daemon and a container work

  1. Check the Docker service:

    sudo systemctl status docker

    If it is not running, start it with:

    sudo systemctl start docker
  2. Run Docker’s test container:

    sudo docker run hello-world

    Docker Docs explains that this command downloads a test image, runs it in a container, prints a confirmation message, and exits. The service starts automatically on Debian-based distributions.

Choose an installation method that fits your needs

Method Best suited to Updates and control
Docker APT repository Routine Debian host installations Integrated with APT; install or upgrade by selecting repository packages. Version availability depends on release and architecture.
Manual .deb packages Hosts that cannot use the APT repository Requires obtaining the release- and architecture-specific packages again for upgrades.
Convenience script Development and testing Defaults to the latest stable packages, provides limited customization, and is not designed to upgrade an existing installation.

Docker describes its convenience script as unsuitable for production use: it requires root or sudo, installs dependencies and recommendations without confirmation, and may result in unexpected major upgrades. You can preview its actions with --dry-run. For a managed installation, use the APT repository method.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Docker Desktop for Linux is a separate option; the steps here install Docker Engine directly on a Debian host.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Understand firewall behavior before publishing container ports

Docker warns that published container ports can bypass firewall rules managed by ufw or firewalld. Account for this before exposing a service on an internet-facing host. Docker supports iptables-nft and iptables-legacy, but says firewall rules created with nft are unsupported on a system with Docker installed. For relevant filtering, Docker directs administrators to iptables or ip6tables rules, including the DOCKER-USER chain. See the firewall notes in Docker’s Debian installation guide.

Decide whether to use sudo or rootless mode

The Docker group exists after installation but initially contains no users. Adding a user to it allows Docker commands without sudo, but it is not a privilege boundary: Docker Docs states, “The docker group grants root-level privileges to the user.” If that level of access is not appropriate, keep using sudo or review Docker’s rootless mode instructions for a non-root daemon option.

Upgrade or uninstall Docker Engine

To upgrade, repeat the package installation procedure with the desired newer version. To uninstall, Docker’s documented procedure purges its packages and removes its repository and key files. That does not automatically delete stored images, containers, volumes, or custom configuration. Removing /var/lib/docker and /var/lib/containerd is a separate destructive cleanup step; only do so if you explicitly want to remove that data. Follow the upgrade and uninstall commands in the Docker Debian guide.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
PC Slower Than It Used to Be?Free scan - under a minute
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.