{"id":203,"date":"2026-07-17T07:30:22","date_gmt":"2026-07-17T07:30:22","guid":{"rendered":"https:\/\/alexawebservers.com\/blog\/80-comandos-esenciales-de-docker-que-todo-desarrollador-debe-conocer\/"},"modified":"2026-07-19T08:08:25","modified_gmt":"2026-07-19T08:08:25","slug":"80-comandos-esenciales-de-docker-que-todo-desarrollador-debe-conocer","status":"publish","type":"post","link":"https:\/\/alexawebservers.com\/blog\/80-comandos-esenciales-de-docker-que-todo-desarrollador-debe-conocer\/","title":{"rendered":"80+ Comandos Esenciales de Docker que Todo Desarrollador Debe Conocer"},"content":{"rendered":"<p>Docker se ha convertido en el est\u00e1ndar para empaquetar, distribuir y ejecutar aplicaciones. Ya sea que est\u00e9s desplegando microservicios, configurando un pipeline CI\/CD o simplemente ejecutando un entorno de desarrollo local, estos 80+ comandos de Docker cubrir\u00e1n todo lo que necesitas.<\/p>\n<h2>1. Ciclo de Vida de Contenedores<\/h2>\n<p><code>docker run -d --name miapp nginx<\/code> \u2014 Ejecutar contenedor en modo detached.<br \/>\n<code>docker run -it ubuntu bash<\/code> \u2014 Ejecutar interactivamente con shell.<br \/>\n<code>docker run --rm alpine<\/code> \u2014 Ejecutar y auto-eliminar al salir.<br \/>\n<code>docker start miapp<\/code> \u2014 Iniciar contenedor detenido.<br \/>\n<code>docker stop miapp<\/code> \u2014 Detener contenedor gracefulmente.<br \/>\n<code>docker restart miapp<\/code> \u2014 Reiniciar contenedor.<br \/>\n<code>docker pause miapp<\/code> \u2014 Pausar procesos en contenedor.<br \/>\n<code>docker unpause miapp<\/code> \u2014 Reanudar contenedor.<br \/>\n<code>docker kill miapp<\/code> \u2014 Forzar detenci\u00f3n.<br \/>\n<code>docker rm miapp<\/code> \u2014 Eliminar contenedor detenido.<br \/>\n<code>docker rm -f miapp<\/code> \u2014 Forzar eliminaci\u00f3n de contenedor activo.<br \/>\n<code>docker container prune<\/code> \u2014 Eliminar todos los contenedores detenidos.<\/p>\n<h2>2. Gesti\u00f3n de Im\u00e1genes<\/h2>\n<p><code>docker images<\/code> \u2014 Listar im\u00e1genes.<br \/>\n<code>docker pull nginx<\/code> \u2014 Descargar imagen de un registro.<br \/>\n<code>docker push usuario\/miapp:latest<\/code> \u2014 Subir imagen a registro.<br \/>\n<code>docker build -t miapp:1.0 .<\/code> \u2014 Construir imagen desde Dockerfile.<br \/>\n<code>docker build --no-cache -t miapp .<\/code> \u2014 Construir sin cach\u00e9.<br \/>\n<code>docker rmi nginx<\/code> \u2014 Eliminar imagen.<br \/>\n<code>docker image prune<\/code> \u2014 Eliminar im\u00e1genes colgantes.<br \/>\n<code>docker image prune -a<\/code> \u2014 Eliminar todas las im\u00e1genes no usadas.<br \/>\n<code>docker tag miapp usuario\/miapp:latest<\/code> \u2014 Etiquetar imagen.<br \/>\n<code>docker save -o miapp.tar miapp:1.0<\/code> \u2014 Guardar imagen como archivo tar.<br \/>\n<code>docker load -i miapp.tar<\/code> \u2014 Cargar imagen desde tar.<br \/>\n<code>docker history miapp:1.0<\/code> \u2014 Mostrar historial de capas.<br \/>\n<code>docker inspect miapp:1.0<\/code> \u2014 Mostrar metadatos detallados.<\/p>\n<h2>3. Inspecci\u00f3n de Contenedores<\/h2>\n<p><code>docker ps<\/code> \u2014 Listar contenedores activos.<br \/>\n<code>docker ps -a<\/code> \u2014 Listar todos los contenedores.<br \/>\n<code>docker logs miapp<\/code> \u2014 Ver logs del contenedor.<br \/>\n<code>docker logs -f miapp<\/code> \u2014 Seguir logs en tiempo real.<br \/>\n<code>docker logs --tail 50 miapp<\/code> \u2014 Mostrar \u00faltimas 50 l\u00edneas.<br \/>\n<code>docker top miapp<\/code> \u2014 Mostrar procesos dentro del contenedor.<br \/>\n<code>docker stats<\/code> \u2014 Uso de recursos en vivo.<br \/>\n<code>docker inspect miapp<\/code> \u2014 Metadatos detallados del contenedor.<br \/>\n<code>docker port miapp<\/code> \u2014 Mostrar mapeo de puertos.<br \/>\n<code>docker diff miapp<\/code> \u2014 Mostrar cambios en sistema de archivos.<\/p>\n<h2>4. Redes<\/h2>\n<p><code>docker network ls<\/code> \u2014 Listar redes.<br \/>\n<code>docker network create mired<\/code> \u2014 Crear red bridge.<br \/>\n<code>docker run --network=mired nginx<\/code> \u2014 Ejecutar en red espec\u00edfica.<br \/>\n<code>docker network connect mired miapp<\/code> \u2014 Conectar contenedor a red.<br \/>\n<code>docker network disconnect mired miapp<\/code> \u2014 Desconectar contenedor.<br \/>\n<code>docker network inspect mired<\/code> \u2014 Detalles de red.<br \/>\n<code>docker network prune<\/code> \u2014 Eliminar redes no usadas.<\/p>\n<h2>5. Vol\u00famenes y Almacenamiento<\/h2>\n<p><code>docker volume ls<\/code> \u2014 Listar vol\u00famenes.<br \/>\n<code>docker volume create mivol<\/code> \u2014 Crear volumen.<br \/>\n<code>docker run -v mivol:\/data nginx<\/code> \u2014 Montar volumen.<br \/>\n<code>docker run -v \/host\/ruta:\/contenedor\/ruta nginx<\/code> \u2014 Montar directorio host.<br \/>\n<code>docker volume prune<\/code> \u2014 Eliminar vol\u00famenes no usados.<br \/>\n<code>docker cp miapp:\/app\/config.json .\/config.json<\/code> \u2014 Copiar archivo desde contenedor.<br \/>\n<code>docker cp .\/backup.sql miapp:\/backup\/<\/code> \u2014 Copiar archivo al contenedor.<\/p>\n<h2>6. Docker Compose<\/h2>\n<p><code>docker compose up -d<\/code> \u2014 Iniciar servicios en modo detached.<br \/>\n<code>docker compose down<\/code> \u2014 Detener y eliminar contenedores y redes.<br \/>\n<code>docker compose down -v<\/code> \u2014 Detener y eliminar tambi\u00e9n vol\u00famenes.<br \/>\n<code>docker compose logs -f<\/code> \u2014 Seguir logs de todos los servicios.<br \/>\n<code>docker compose ps<\/code> \u2014 Estado de servicios.<br \/>\n<code>docker compose build<\/code> \u2014 Construir im\u00e1genes.<br \/>\n<code>docker compose exec web bash<\/code> \u2014 Ejecutar comando en servicio activo.<br \/>\n<code>docker compose config<\/code> \u2014 Validar archivo compose.<br \/>\n<code>docker compose pull<\/code> \u2014 Descargar im\u00e1genes de todos los servicios.<\/p>\n<h2>7. Dockerfile Esencial<\/h2>\n<p><code>FROM node:20-alpine<\/code> \u2014 Imagen base.<br \/>\n<code>WORKDIR \/app<\/code> \u2014 Directorio de trabajo.<br \/>\n<code>COPY package*.json .\/<\/code> \u2014 Copiar archivos.<br \/>\n<code>RUN npm install<\/code> \u2014 Ejecutar comandos de construcci\u00f3n.<br \/>\n<code>EXPOSE 3000<\/code> \u2014 Declarar puerto.<br \/>\n<code>CMD [\"node\", \"server.js\"]<\/code> \u2014 Comando por defecto.<br \/>\n<code>ENV NODE_ENV=production<\/code> \u2014 Variables de entorno.<br \/>\n<code>USER node<\/code> \u2014 Cambiar a usuario no root.<br \/>\n<code>HEALTHCHECK --interval=30s CMD curl -f http:\/\/localhost\/<\/code> \u2014 Health check.<br \/>\n<code>VOLUME \/data<\/code> \u2014 Punto de montaje.<\/p>\n<h2>8. Limpieza y Mantenimiento<\/h2>\n<p><code>docker system df<\/code> \u2014 Mostrar uso de disco de Docker.<br \/>\n<code>docker system prune<\/code> \u2014 Eliminar datos no usados.<br \/>\n<code>docker system prune -a --volumes<\/code> \u2014 Limpieza agresiva total.<br \/>\n<code>docker container prune<\/code> \u2014 Eliminar contenedores detenidos.<br \/>\n<code>docker image prune -a<\/code> \u2014 Eliminar im\u00e1genes no usadas.<\/p>\n<p><strong>Tambien te puede interesar:<\/strong> Nuestra <a href=\"https:\/\/alexawebservers.com\/blog\/100-comandos-esenciales-de-kubernetes-que-todo-ingeniero-devops-debe-conocer\/\">guia de 100+ comandos esenciales de Kubernetes<\/a> para orquestacion de contenedores.<\/p>\n<hr \/>\n<p><strong>Domina Docker y podr\u00e1s desplegar cualquier cosa en cualquier lugar.<\/strong> Descarga nuestra <a href=\"https:\/\/ovidia1.gumroad.com\/l\/fsrhmx\" target=\"_blank\" rel=\"noopener noreferrer\">gu\u00eda gratuita de comandos Docker<\/a> para consulta r\u00e1pida sin conexi\u00f3n \u2014 80+ comandos en formato imprimible.<\/p>\n<p>Para despliegues en producci\u00f3n, consulta el <a href=\"https:\/\/ovidia1.gumroad.com\/l\/ubxkia\" target=\"_blank\" rel=\"noopener noreferrer\">Docker DevOps Toolkit ($15)<\/a> \u2014 15 recursos Docker incluyendo plantillas compose, Dockerfiles multi-stage y scripts CI\/CD.<\/p>\n<p>Explora nuestro <a href=\"https:\/\/alexawebservers.com\/blog\/products\/\" target=\"_blank\" rel=\"noopener noreferrer\">cat\u00e1logo completo<\/a> para m\u00e1s herramientas DevOps y gu\u00edas de referencia.<\/p>\n<p><strong>Tambien te puede interesar:<\/strong> Nuestra <a href=\"https:\/\/alexawebservers.com\/blog\/100-comandos-esenciales-de-linux-que-todo-administrador-de-sistemas-debe-conocer\/\" target=\"_blank\" rel=\"noopener noreferrer\">guia de 100 comandos esenciales de Linux<\/a> para administracion general de servidores.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Guia completa de 80+ comandos esenciales de Docker. Cubre contenedores, imagenes, redes, volumenes, compose y Dockerfiles. Con guia gratuita descargable.<\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13],"tags":[],"class_list":["post-203","post","type-post","status-publish","format-standard","hentry","category-linux-devops"],"_links":{"self":[{"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/posts\/203","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/comments?post=203"}],"version-history":[{"count":3,"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/posts\/203\/revisions"}],"predecessor-version":[{"id":222,"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/posts\/203\/revisions\/222"}],"wp:attachment":[{"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/media?parent=203"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/categories?post=203"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alexawebservers.com\/blog\/wp-json\/wp\/v2\/tags?post=203"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}