Administración de contenedores
Listar contenedores activos:
docker ps
Mostrar todos los contenedores, incluyendo los detenidos:
docker ps -a
Iniciar un contenedor existenet:
docker start nombre_contenedor
Detener un contenedor en ejecución:
docker stop nombre_contenedor
Acceder a un contenedor mediante un shell interactivo:
docker exec -it nombre_contenedor /bin/bash
Guardar un contenedor como una nueva imagen:
docker commit nombre_contenedor nueva_imagen:etiqueta
Eliminar un contenedor detenido:
docker rm nombre_contenedor
Manejo de imágenes
Listar imágenes disponibles localmente:
docker images
Descargar una imagen desde un registro:
docker pull nombre_imagen:etiqueta
Construir una imagen a partir de un Dockerfile:
docker build -t nombre_imagen:etiqueta ruta_directorio
Eliminar una imagen local:
docker rmi nombre_imagen
Exportar una imagen a un archivo tar:
docker save -o archivo.tar nombre_imagen:etiqueta
Cargar una imagen desde un archivo tar:
docker load -i archivo.tar
Transferencia de archivos entre host y contenedor
Copiar un archivo del host al contenedor:
docker cp /ruta/en/host/archivo.txt nombre_contenedor:/ruta/en/contenedor/
Copiar un archivo del contenedor al host:
docker cp nombre_contenedor:/ruta/en/contenedor/archivo.txt /ruta/en/host/
Monitoreo y registro de actividad
Consultar los registros de un contenedor:
docker logs nombre_contenedor
Seguir los registros en tiempo real:
docker logs -f nombre_contenedor
Vaciar los registros de un contenedor:
docker logs --tail=0 nombre_contenedor
Limitación de recursos para contenedores
Asignar límites de CPU al ejecutar un contenedor:
docker run --cpus=1.5 nombre_imagen
Establecer límites de memoria para un contenedor:
docker run --memory=512m nombre_imagen
Inspección y depuración
Listar procesos dentro de un contenedor:
docker top nombre_contenedor
Ejecutar un comando específico dentro de un contenedor:
docker exec nombre_contenedor comando
Ver estadísticas de uso de recursos en tiempo real:
docker stats
Obtener metadatos detallados de un contenedor:
docker inspect nombre_contenedor
Políticas de reinicio
Ejeuctar un contenedor con reinicio automático:
docker run --restart=always nombre_imagen
Desactivar la política de reinicio para un contenedor:
docker run --restart=no nombre_imagen
Configuración de zona horaria
Definir la zona horaria dentro de un contenedor:
docker run -e TZ=America/New_York nombre_imagen
Etiquetas y versionado de imágenes
Listar todas las etiquetas de una imagen:
docker image ls nombre_imagen
Crear una nueva etiqueta para una imagen existente:
docker tag nombre_imagen:etiqueta_original nombre_imagen:nueva_etiqueta
Eliminar una etiqueta específica de una imagen:
docker rmi nombre_imagen:etiqueta
Limpieza del entorno Docker
Analizar el espacio utilizado por Docker:
docker system df
Eliminar recursos no utilizados, como imágenes, contenedores y redes:
docker system prune -a
Borrar solo imágenes sin etiquetas o no reefrenciadas:
docker image prune -a
Limpiar volúmenes no montados:
docker volume prune
Eliminar contenedores detenidos:
docker container prune