Docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock
Solución al error 'Cannot connect to the Docker daemon' en Docker. Causas principales y cómo resolverlo en Linux, macOS y Windows.
¿Por qué ocurre?
Docker no puede conectarse al daemon porque: - El servicio Docker no está iniciado - El usuario actual no tiene permisos para acceder al socket `/var/run/docker.sock` - En Windows/macOS, Docker Desktop no está corriendo - El socket está en una ruta diferente a la esperada
Solución paso a paso
1. Iniciar el servicio Docker (Linux)
# systemd
sudo systemctl start docker
sudo systemctl enable docker # arrancar al inicio# Verificar estado
sudo systemctl status docker
2. Añadir tu usuario al grupo docker (Linux)
sudo usermod -aG docker $USER# Aplicar cambios sin reiniciar sesión
newgrp docker
# Verificar
docker run hello-world
3. Windows / macOS — abrir Docker Desktop Simplemente abre la aplicación Docker Desktop y espera a que el icono de la ballena deje de animar.
4. Verificar socket (casos avanzados)
# Ver dónde está el socket
ls -la /var/run/docker.sock# Si usas Podman como alternativa
export DOCKER_HOST=unix:///run/user/$(id -u)/podman/podman.sock
5. Dentro de CI/CD (GitHub Actions, etc.)
# Asegúrate de que el job usa ubuntu-latest
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Verificar Docker
run: docker version
Cómo evitarlo en el futuro
- Ejecuta `sudo systemctl enable docker` para que arranque automáticamente - En Linux, añade siempre tu usuario al grupo `docker` tras instalar - En scripts de CI, usa `ubuntu-latest` que ya incluye Docker - Evita usar `sudo docker` si el usuario ya está en el grupo docker
¿Quieres que una IA te ayude? Genera el prompt perfecto para tu error:
Generador de Prompts