Cómo Instalar Docker en AlmaLinux 10 Paso a Paso
Docker es una plataforma de virtualización a nivel de sistema operativo que permite desplegar, probar y empaquetar aplicaciones dentro de entornos aislados denominados contenedores. A diferencia de las máquinas virtuales tradicionales —que requieren hipervisores y la emulación de un sistema operativo invitado completo—, los contenedores comparten el mismo Kernel del sistema anfitrión, ofreciendo tiempos de arranque en milisegundos y un consumo de recursos sumamente eficiente.
Si estás buscando cómo instalar Docker en almalinux 10, en esta guía paso a paso aprenderás a configurar el repositorio oficial de Docker Engine, gestionar el servicio con systemctl, habilitar permisos para un usuario no root y ajustar las políticas de seguridad en SELinux y firewalld
Guía Completa para Instalar Docker en AlmaLinux 10
Requisitos Previos
Antes de proceder con el despliegue de Docker Engine, confirma que tu entorno cumple con los siguientes requerimientos:
- Un servidor o máquina virtual con AlmaLinux 10 (arquitectura x86_64, aarch64 o s390x).
- Acceso a la terminal con privilegios de administrador (
root) o acceso víasudo. - Conexión activa a Internet para la descarga de paquetes.
Paso 1: Limpiar Instalaciones Previas o Conflictivas
AlmaLinux y otras distribuciones de la familia Enterprise Linux pueden incluir paquetes nativos como Podman o revisiones antiguas de Docker (docker-client, docker-common). Para evitar conflictos antes de instalar docker en almalinux 10, remueve cualquier rastro previo:
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine podman buildahPaso 2: Configurar el Repositorio Oficial de Docker
Aunque la base de repositorios de AlmaLinux incluye herramientas de contenedorización como Podman, para disponer de la versión más reciente y estable es necesario agregar el repositorio oficial de Docker CE.
1. Instalar las utilidades básicas de DNF
Asegúrate de contar con el paquete dnf-plugins-core:
sudo dnf install dnf-plugins-core -y2. Agregar el repositorio de Docker CE
Añade la fuente de descarga oficial para la rama Enterprise/CentOS:
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo3. Actualizar la caché de paquetes
Refresca los metadatos de DNF para incorporar los nuevos paquetes del repositorio de Docker:
sudo dnf makecachePaso 3: Instalación de Docker Engine y Docker Compose
Para completar el proceso para instalar docker en almalinux 10, ejecutaremos la instalación de la suite completa de contenedores, que abarca el demonio principal (dockerd), la interfaz de línea de comandos (CLI), el runtime containerd y el complemento oficial para Docker Compose v2.
Ejecuta el siguiente comando:
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -yPaso 4: Iniciar y Habilitar el Demonio de Docker
Una vez finalizada la instalación de los paquetes, el servicio de Docker no se inicia automáticamente por defecto. Debes arrancarlo y configurarlo para que inicie junto con el sistema operativo mediante systemctl.
1. Habilitar y arrancar el servicio
sudo systemctl enable --now docker(El parámetro --now habilita el inicio automático en el arranque del sistema y arranca el demonio inmediatamente en un solo paso).
2. Verificar el estado del servicio
Confirma que el demonio de Docker está ejecutándose correctamente:
sudo systemctl status dockerDeberías obtener una salida similar a esta en tu terminal:
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; preset: disabled)
Drop-In: /run/systemd/system/service.d
└─zzz-lxc-service.conf
Active: active (running) since Mon 2026-08-31 03:03:05 UTC; 3min 16s ago
Invocation: c8f43dc382284b22a7ba91640abbff52
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 3981 (dockerd)
Tasks: 8
Memory: 140.5M (peak: 142.8M)
CPU: 402ms
CGroup: /system.slice/docker.service
└─3981 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
Paso 5: Configurar Docker para Ejecutarse sin Privilegios de Root (Opcional)
Por defecto, tras instalar docker en almalinux 10, el demonio de Docker se enlaza a un socket UNIX que pertenece al usuario root. Esto significa que cualquier comando dictado mediante docker requiere elevación de privilegios sudo.
Para permitir que un usuario estándar de tu sistema administre contenedores sin anteponer sudo, agrégalo al grupo de seguridad docker.
1. Crear el usuario (si aún no existe)
sudo useradd -m -s /bin/bash usuario_dev
sudo passwd usuario_dev2. Añadir el usuario al grupo docker
sudo usermod -aG docker usuario_dev3. Aplicar los cambios de grupo
Para que la actualización de grupos surta efecto en la sesión actual, el usuario puede ejecutar:
newgrp dockerPaso 6: Verificación de la Instalación
Comprueba la correcta comunicación entre el cliente CLI de Docker, el demonio dockerd y el registro de imágenes ejecutando el contenedor oficial de pruebas:
docker run hello-worldSi todo funciona según lo previsto, la terminal descargará la imagen ligera y desplegará un mensaje de confirmación:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...Verificar la versión de Docker y Docker Compose
Puedes consultar las versiones exactas instaladas en AlmaLinux 10 ejecutando:
docker --version
docker compose versionPaso 7: Configuración de Firewall (firewalld) y SELinux
En sistemas empresariales como AlmaLinux 10, firewalld y SELinux vienen activos en modo estricto (Enforcing).
1. Permitir tráfico de red en firewalld
Docker manipula directamente las reglas de iptables/nftables para gestionar el reenvío de puertos. Si tus contenedores exponen servicios a la red exterior (como puertos 80, 443 o 3306), habilita la zona o los puertos en firewalld:
sudo firewall-cmd --zone=public --add-masquerade --permanent
sudo firewall-cmd --reload2. Consideraciones sobre SELinux y Volúmenes
Cuando montes directorios del sistema de archivos local de AlmaLinux hacia un contenedor usando volúmenes (-v o bind mounts), debes indicarle a SELinux que modifique la etiqueta de seguridad añadiendo la bandera :z o :Z:
docker run -d -v /var/www/html:/usr/share/nginx/html:z -p 80:80 nginxPreguntas Frecuentes (FAQ)
¿Cuál es la diferencia entre Podman y Docker en AlmaLinux 10?
Podman es la herramienta de contenedorización incluida nativamente en la distribución, caracterizada por ser daemonless (sin un demonio central residente en memoria) y orientada al uso sin privilegios root por defecto. Docker utiliza la arquitectura tradicional cliente-servidor basada en el demonio dockerd y cuenta con un ecosistema amplio de integraciones de CI/CD.
¿Cómo se instala el complemento Docker Compose moderno?
En versiones actuales no se recomienda descargar el binario docker-compose de manera independiente vía curl. El estándar actual es instalar el paquete oficial docker-compose-plugin desde el repositorio oficial de Docker y utilizar el comando unificado docker compose
¿Qué debo hacer si obtengo el error "Cannot connect to the Docker daemon"?
Este error indica que el servicio de Docker no está iniciado o que tu usuario no tiene permisos suficientes sobre el socket UNIX. Verifica el estado del servicio con sudo systemctl status docker o asegúrate de haber agregado tu usuario al grupo docker
Conclusión
¡Enhorabuena! Has finalizado el procedimiento para instalar docker en almalinux 10 con éxito. Tu servidor ahora está listo para desplegar arquitecturas basadas en microservicios, entornos de desarrollo aislados y aplicaciones en producción con un alto nivel de portabilidad.
