[[Docker]] es una herramienta con la que todo desarrollador se encuentra en algún momento. Sin embargo, debido a su naturaleza, si no la usas a diario, es fácil que los comandos se te olviden cuando intentas volver a utilizarlos después de un tiempo. Y como tendemos a usar solo lo más frecuente, es común olvidar aquellos que no se utilizan con regularidad.
A mí mismo me ocurre; cada vez que me pasa, tengo que buscar en la documentación oficial o en internet. Para reducir este proceso repetitivo, he creado esta **guía rápida de comandos Docker de uso frecuente, organizada de forma sencilla y clara**.
Contiene solo lo esencial, para que puedas consultarla siempre que lo necesites. 😊
***

## 1. Comandos relacionados con imágenes
| Comando | Descripción |
| --- | --- |
| `docker build -t : .` | Crea una imagen a partir de un Dockerfile en el directorio actual |
| `docker images` | Muestra una lista de imágenes locales |
| `docker rmi ` | Elimina una imagen |
| `docker pull ` | Descarga una imagen desde un repositorio remoto |
| `docker push ` | Sube una imagen a un repositorio (requiere iniciar sesión) |
## 2. Comandos relacionados con contenedores
| Comando | Descripción |
| --- | --- |
| `docker run -d --name -p 8000:8000 ` | Ejecuta un contenedor en segundo plano |
| `docker ps` | Lista los contenedores en ejecución |
| `docker ps -a` | Lista todos los contenedores, incluidos los detenidos |
| `docker exec -it /bin/bash` | Accede a un contenedor en ejecución |
| `docker logs -f ` | Muestra los logs en tiempo real |
| `docker stop ` | Detiene un contenedor |
| `docker rm ` | Elimina un contenedor detenido |
| `docker restart ` | Reinicia un contenedor |
## 3. Volúmenes y redes
| Comando | Descripción |
| --- | --- |
| `docker volume ls` | Lista los volúmenes |
| `docker volume prune` | Elimina volúmenes no utilizados |
| `docker network ls` | Lista las redes |
| `docker network inspect ` | Muestra detalles de una red |
## 4. Docker Compose
| Comando | Descripción |
| --- | --- |
| `docker-compose up -d` | Ejecuta servicios en segundo plano |
| `docker-compose down` | Detiene y elimina todos los servicios |
| `docker-compose ps` | Lista los servicios en ejecución |
| `docker-compose logs -f` | Verifica los logs en tiempo real |
| `docker-compose restart ` | Reinicia un servicio |
## 5. Docker Swarm
| Comando | Descripción |
| --- | --- |
| `docker swarm init` | Inicializa el modo Swarm |
| `docker stack deploy -c docker-compose.yml ` | Despliega un stack |
| `docker stack rm ` | Detiene y elimina un stack |
| `docker service ls` | Lista los servicios |
| `docker service ps ` | Muestra el estado de un servicio |
| `docker service update --force ` | Reinicia un servicio (aplica nuevas configuraciones) |
## 6. Otros comandos útiles
| Comando | Descripción |
| --- | --- |
| `docker system df` | Verifica el uso del disco |
| `docker system prune` | Limpia imágenes/contenedores/volúmenes no utilizados |
| `docker stats` | Verifica el uso de recursos de los contenedores en tiempo real |
| `docker inspect ` | Muestra información detallada de un objeto |
| `docker info` | Muestra información del entorno Docker actual |
| `journalctl -u docker.service` | Verifica los logs del servicio Docker basado en systemd |
| `sudo systemctl status docker` | Verifica el estado del demonio Docker |
| `sudo systemctl restart docker` | Reinicia el demonio Docker |
| `sudo less /var/log/syslog` | Permite buscar mensajes relacionados con Docker en los logs del sistema (basado en Ubuntu) |
***
Espero que sea de gran ayuda para muchos desarrolladores.
Hay mucha más información sobre Docker disponible en el blog, así que utiliza el cuadro de búsqueda a la derecha para encontrar contenido de tu interés por palabras clave.