Docker is one of the most popular platforms for developers and system administrators to package applications into containers for a more straightforward software development process. Docker solves the age-old problem of “but it works on my machine” by allowing you to define consistent, reproducible environments using a Dockerfile, ensuring your application runs the same way on any system that supports Docker. This tutorial will show you how to install Docker on AlmaLinux 10.
Table of Contents
Prerequisites
Before we begin, make sure you have:
- A system running AlmaLinux 10
- User privileges: root or non-root user with sudo privileges
- Access to a terminal or SSH session
Step 1: Update Your System
Before installing Docker, it’s always a good idea to update your system packages to their latest versions available:
sudo dnf update -y
Step 2: Add the Docker Repository
Docker is not available in the default AlmaLinux 10 repository. You’ll need to add the official Docker CE (Community Edition) repository to install it. Before you do that, make sure also to install the dnf-plugins-core so you can use the dnf config manager to add the repository, run the command to install dnf-plugins-core
dnf -y install dnf-plugins-coresudo dnf config-manager --add-repo
Then you can go ahead and add the repository.
dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Even though the repository says “CentOS,” it works for AlmaLinux because they are binary compatible.
Step 3: Install Docker Engine
Now, to install Docker Engine and its related components, run the command:
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
Once the installation is complete, you should get a similar output:
Installed:
docker-buildx-plugin-0.23.0-1.el10.x86_64
docker-ce-3:28.1.1-1.el10.x86_64
docker-ce-cli-1:28.1.1-1.el10.x86_64
docker-compose-plugin-2.35.1-1.el10.x86_64
tar-2:1.35-4.el10.x86_64_v2
Step 4: Start and Enable Docker
Enable and start the Docker service so it runs on boot:
sudo systemctl enable --now docker
To confirm Docker is running:
sudo systemctl status docker
● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Thu 2025-04-23 11:20:43 UTC; 4min 40s ago Docs: https://docs.docker.com Main PID: 23651 (dockerd) Tasks: 9 Memory: 34.7M CGroup: /system.slice/docker.service └─23659 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
If Docker is not starting and you get the following error:
/usr/bin/containerd: CPU ISA level is lower than required
This means that the containerd binary used by Docker requires a newer CPU instruction set architecture (ISA) than your current CPU supports. This commonly happens when running modern container tools on older hardware (like older VPSes or local machines).
Step 5: Add Your User to the Docker Group (Optional)
To run Docker without sudo, add your user to the docker group. If you are already logged in as the user you want to run Docker with, you can run the command:
sudo usermod -aG docker $USER
You’ll need to log out and back in for the group change to take effect.
Step 6: Test Docker Installation
Let’s run a test container to ensure everything is working:
docker run hello-world
You should see a confirmation message that Docker is installed and working correctly.
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 719385e32844: Pull complete Digest: sha256:dcba6daec718f547568c562956fa47e1b03673dd010fe6ee58ca806767031d1c Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.
…
Docker compose
Docker Compose is included as a plugin when you install Docker via this method so that you can use it directly:
docker compose version
Conclusion
You have successfully learned how to install Docker on AlmaLinux 10. You’re now ready to deploy containers, run microservices, and fully take advantage of containerized development. If you encounter any issues while installing Docker, you can contact our experienced admins for help.