Docker se ha consolidado como una de las herramientas más utilizadas por desarrolladores y administradores de sistemas para crear, probar y gestionar entornos de desarrollo mediante contenedores. Su capacidad para aislar aplicaciones y sus dependencias en un entorno controlado y portátil ha transformado la manera en que se gestionan los servicios y las aplicaciones.
Si eres nuevo en Docker o si ya tienes algo de experiencia, dominar los comandos fundamentales de Docker es esencial para optimizar tus flujos de trabajo. En este artículo, exploramos 20 comandos esenciales de Docker que son imprescindibles para gestionar contenedores de manera eficiente.
¿Qué es Docker?
Docker es una plataforma de código abierto que permite crear, gestionar y ejecutar aplicaciones dentro de contenedores. A través de esta tecnología, los desarrolladores pueden empaquetar sus aplicaciones con todas sus dependencias, lo que hace que estas sean fácilmente portables entre diferentes entornos, como servidores locales, entornos de desarrollo y la nube.
Docker proporciona una manera eficiente de gestionar recursos, ya que los contenedores usan menos memoria y proporcionan un arranque más rápido en comparación con las máquinas virtuales. Además, Docker ha ganado popularidad en el desarrollo de microservicios y en la creación de entornos de pruebas automatizadas debido a su flexibilidad y eficiencia.
20 Comandos Esenciales de Docker y Qué Hacen
A continuación te presentamos 20 comandos clave que te ayudarán a sacar el máximo provecho de Docker.
1. docker run
Este comando es el punto de partida para crear y ejecutar contenedores. Si el contenedor no existe, Docker buscará la imagen correspondiente o la creará.
Ejemplo:
docker run --name nginx -p 8080:80 -d nginx
Esto ejecuta un contenedor con la imagen nginx
, mapeando el puerto 80 del contenedor al puerto 8080 del host.
2. docker search
Busca imágenes en Docker Hub o en otros registros.
Ejemplo:
docker search ubuntu
Esto muestra todas las imágenes disponibles de Ubuntu en Docker Hub.
3. docker stop
Detiene la ejecución de un contenedor de manera controlada.
Ejemplo:
docker stop nginx
Detiene el contenedor llamado nginx
.
4. docker rename
Permite renombrar un contenedor.
Ejemplo:
docker rename nginx nginx-container
Renombra el contenedor nginx
a nginx-container
.
5. docker restart
Reinicia un contenedor que ha sido detenido.
Ejemplo:
docker restart nginx-container
6. docker pause / unpause
Pausa o reanuda todos los procesos dentro de un contenedor.
Ejemplo:
docker pause nginx-container
docker unpause nginx-container
7. docker kill
Envía una señal SIGKILL a un contenedor, forzando su detención inmediata.
Ejemplo:
docker kill nginx-container
Usa este comando solo cuando no sea posible detener el contenedor de manera convencional.
8. docker pull
Descarga una imagen desde Docker Hub u otro registro.
Ejemplo:
docker pull node:14
Esto descarga la imagen oficial de Node.js versión 14.
9. docker ps
Muestra todos los contenedores en ejecución.
Ejemplo:
docker ps
Para ver también los contenedores detenidos, usa docker ps -a
.
10. docker login
Inicia sesión en Docker Hub o en otro registro de Docker.
Ejemplo:
docker login
Te pedirá tus credenciales de Docker Hub.
11. docker commit
Crea una nueva imagen a partir de un contenedor existente, permitiendo guardar su estado actual.
Ejemplo:
docker commit nginx-container custom-nginx
Crea una imagen llamada custom-nginx
a partir del contenedor nginx-container
.
12. docker exec
Ejecuta un comando dentro de un contenedor en ejecución.
Ejemplo:
docker exec -it nginx-container bash
Abre una terminal Bash interactiva dentro del contenedor nginx-container
.
13. docker rmi
Elimina una imagen de Docker.
Ejemplo:
docker rmi custom-nginx
Esto eliminará la imagen custom-nginx
de tu sistema.
14. docker cp
Copia archivos o directorios entre el contenedor y el host.
Ejemplo:
docker cp nginx-container:/etc/nginx/nginx.conf ./nginx.conf
Copia el archivo nginx.conf
desde el contenedor al directorio actual en el host.
15. docker logs
Muestra los logs de un contenedor en ejecución, útil para depurar errores.
Ejemplo:
docker logs nginx-container
16. docker info
Muestra información sobre el estado del sistema Docker y los contenedores activos.
Ejemplo:
docker info
17. docker logout
Cierra sesión del registro de Docker.
Ejemplo:
docker logout
18. docker inspect
Muestra información detallada de un contenedor o imagen, como su configuración y redirección de puertos.
Ejemplo:
docker inspect nginx-container
19. docker history
Muestra el historial de una imagen, incluyendo las capas y los cambios realizados.
Ejemplo:
docker history ubuntu:latest
20. docker push
Sube una imagen desde tu sistema local a un registro de Docker.
Ejemplo:
docker push custom-nginx
Esto subirá la imagen custom-nginx
al Docker Hub.
Resumen: Comandos de Docker para Mejorar tu Productividad
Estos 20 comandos son solo una muestra de lo que Docker ofrece, pero dominarlos te permitirá gestionar contenedores de manera más efectiva y te ayudará a optimizar tus flujos de trabajo.
Al usar Docker, puedes crear entornos de desarrollo que son completamente portátiles y fáciles de gestionar, lo que facilita tanto la colaboración como la administración de infraestructuras de software. Sin embargo, como con cualquier herramienta potente, el conocimiento profundo de sus comandos es clave para su éxito.
¿Cuáles son los comandos de Docker que más usas? ¿Tienes algún truco o comando que te gustaría compartir? ¡Déjanos tus comentarios!