How7o
  • Home
  • Tools
  • Prank Screens
  • Learn
  • Blog
  • Contact
Reading: Install Docker on AlmaLinux: Step-by-Step (Docker CE + Compose)
Share
How7oHow7o
Font ResizerAa
  • OS
Search
  • Home
  • Tools
  • Prank Screens
  • Learn
  • Blog
  • Contact
Follow US
© 2024–2026 How7o. All rights reserved.
How7o > Learn > Server Management > Install Docker on AlmaLinux: Step-by-Step (Docker CE + Compose)
Server Management

Install Docker on AlmaLinux: Step-by-Step (Docker CE + Compose)

how7o
By how7o
Last updated: January 12, 2026
4 Min Read
Installing Docker on AlmaLinux guide
SHARE

I had to install Docker on AlmaLinux recently because I was setting up a fresh server for a few self-hosted apps (and later, Discourse). I came from CentOS, so I expected it to be “dnf install docker and done”… but on AlmaLinux (RHEL-family), the clean approach is using Docker’s official repository.

Contents
  • What you need before starting
  • Step 1: Update your AlmaLinux system
  • Step 2: Install the required DNF plugin
  • Step 3: Add Docker’s official repository (recommended)
  • Step 4: Install Docker Engine (plus Compose plugin)
  • Step 5: Start Docker and enable it on boot
  • Step 6: Test Docker (hello-world)
  • Optional: Run Docker without sudo (recommended)
  • Optional: Check Docker Compose
  • Troubleshooting (the common issues)
    • Docker service won’t start
    • Permission denied when running docker (without sudo)
  • Useful links
  • Final thoughts

This guide is the exact process I used—simple, repeatable, and easy to maintain when you upgrade later.

What you need before starting

  • An AlmaLinux server (8/9 works great)
  • A user with sudo privileges
  • Internet access (to pull packages from Docker’s repo)

Step 1: Update your AlmaLinux system

I always update first. It avoids dependency weirdness later.

sudo dnf -y update

Step 2: Install the required DNF plugin

To add external repositories cleanly, you’ll want dnf config-manager, which comes from dnf-plugins-core.

sudo dnf install -y dnf-plugins-core

Step 3: Add Docker’s official repository (recommended)

This is the part most people miss. AlmaLinux doesn’t ship Docker CE in the default repo the way people remember from older CentOS days, so adding Docker’s repo keeps installs and upgrades consistent.

sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Step 4: Install Docker Engine (plus Compose plugin)

For a modern setup, I recommend installing Docker CE plus the Buildx and Compose plugins. That way you can run docker compose without extra hacks.

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

Quick note: if you only want the minimal packages, you can install just docker-ce, docker-ce-cli, and containerd.io (that’s how my original quick answer was written). But for most servers, the plugins are worth it.

Step 5: Start Docker and enable it on boot

sudo systemctl enable --now docker

Confirm Docker is running:

sudo systemctl status docker
docker --version

Step 6: Test Docker (hello-world)

This is my favorite sanity check because it verifies the service and the runtime in one shot.

sudo docker run hello-world

Optional: Run Docker without sudo (recommended)

By default, Docker needs root privileges. If this is your own server and you want convenience, add your user to the docker group.

sudo usermod -aG docker $USER

Then log out and log back in (or reboot). After that, try:

docker run hello-world

Optional: Check Docker Compose

If you installed the Compose plugin, this should work:

docker compose version

Troubleshooting (the common issues)

Docker service won’t start

Check logs first:

sudo journalctl -u docker --no-pager -n 200

Permission denied when running docker (without sudo)

You probably added the user to the docker group but didn’t re-login yet. Re-login or reboot, then try again.

Useful links

  • Docker’s official install guide (RHEL/CentOS-family)
  • How to install Discourse on AlmaLinux (my next step after Docker)

Final thoughts

That’s it. Once you install Docker on AlmaLinux using the official repo, everything becomes easier—upgrades are predictable, Compose works normally, and deploying apps becomes “pull + run” instead of a long dependency mess.

TAGGED:almalinuxContainersDevOpsDNFdockerDocker CEDocker ComposeLinuxvps

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
[mc4wp_form]
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Copy Link Print
Previous Article Change welcome message on Ubuntu VPS server (MOTD + SSH banner) Change Welcome Message on Ubuntu VPS (MOTD + SSH Banner)
Next Article Installed Discourse on AlmaLinux How I Installed Discourse on AlmaLinux (Docker Method, Step-by-Step)
Leave a Comment

Leave a Reply Cancel reply

You must be logged in to post a comment.

FacebookLike
XFollow
PinterestPin
InstagramFollow
Most Popular
Display PHP errors — ini_set + php.ini configuration
How to Display PHP Errors
May 10, 2026
PHP convert string to uppercase — strtoupper and mb_strtoupper
How to Convert a String to Uppercase in PHP
May 10, 2026
PHP string to float conversion with cast, regex cleanup, NumberFormatter
How to Convert a String to Float in PHP
May 10, 2026
PHP merge arrays without duplicates — union operator and array_unique
How to Combine Two Arrays Without Duplicates in PHP
May 10, 2026
PHP delete array element — unset, array_splice, array_filter, array_search
How to Delete an Element from a PHP Array
May 10, 2026

You Might Also Like

How to temporarily disable Imunify360 service for testing (cPanel/WHM)
Server Management

How to Temporarily Disable Imunify360 Service (Safe Testing + Fix 503)

5 Min Read
MySQL connect remote from Ubuntu — mysql-client + mysql -h host
Server Management

How to Connect to a Remote MySQL Database from Ubuntu

7 Min Read
MariaDB not starting — six-step triage from logs to stale PID
Server Management

How to Troubleshoot MariaDB Not Starting

8 Min Read
CyberPanel too many redirects Laravel error fixed by restarting LiteSpeed
Server Management

Fix CyberPanel Too Many Redirects (ERR_TOO_MANY_REDIRECTS) for Laravel Subdomain

7 Min Read
How7o

We provide tips, tricks, and advice for improving websites and doing better search.

Tools

  • Age Calculator
  • Word Counter
  • Image Upscaler
  • Password Generator
  • QR Code Generator
  • See all tools→

Pranks

  • Fake Blue Screen Prank
  • Hacker Typer
  • Fake iMessage Generator
  • Windows XP Crash Prank
  • Windows 11 Update Prank
  • See all prank screens →

Company

  • About Us
  • Blog
  • Contact
  • Privacy Policy
  • Terms of Service
  • Sitemap
© 2024–2026 How7o. All rights reserved.
Welcome Back!

Sign in to your account

Username or Email Address
Password

Lost your password?