How to Install Docker on Ubuntu 25.10

Docker is a container engine that uses Linux kernel features to create isolated environments (“containers”) for running applications. It enables developers and system administrators to package applications and their dependencies into portable, efficient containers.

Here is how to install the latest stable version of Docker Engine on Ubuntu 25.10 using Docker’s official repository.

Update Your System

First, update your package list and upgrade existing packages:

sudo apt update -y
sudo apt upgrade -y

Remove Old Versions (Optional)

If you have previously installed Docker or docker.io, remove older packages to avoid conflicts:

sudo apt remove docker docker-engine docker.io containerd runc -y

Install Required Packages for Repository Setup

sudo apt install -y ca-certificates curl gnupg lsb-release

Add Docker’s Official GPG Key and Repository

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker-archive-keyring.gpg
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker-archive-keyring.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

Install Docker Engine, CLI & Dependencies

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

Enable Docker Service

sudo systemctl enable docker
sudo systemctl start docker
sudo systemctl status docker

You should see output indicating the docker.service is active and running.

Add Your User to the “docker” Group (Optional)

To run Docker commands without sudo, add your user to the docker group:

sudo groupadd docker           # (if group does not exist)
sudo usermod -aG docker $USER

Log out and back in so that your group membership is refreshed.

Verify the Installation & Test

Check the Docker version:

docker --version

You should see something like:

Docker version 28.5.1, build e180ab8

Test Docker with the “hello-world” image:

docker run hello-world

You should see a message starting with: “Hello from Docker!”

Output:

root@server:~# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
17eec7bbc9d7: Pull complete
Digest: sha256:6dc565aa630927052111f823c303948cf83670a3903ffa3849f1488ab517f891
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/

You have now successfully installed the latest stable Docker Engine on Ubuntu 25.10.


CrownCloud - Get a SSD powered KVM VPS at $4.5/month!
Use the code WELCOME for 10% off!

1 GB RAM / 25 GB SSD / 1 CPU Core / 1 TB Bandwidth per month

Available Locations: LAX | MIA | ATL | FRA | AMS