Si necesita una plataforma de contenedores completa y de código abierto para crear independencia entre las aplicaciones y la infraestructura, Docker es su apuesta más segura. Si ha tenido la oportunidad de usarlo, ya sabe lo fácil y capaz que es
Un gran número de empresas de TI y de nube lo encuentran extremadamente útil, y su popularidad es definitivamente merecida.
Aún así, esto no lo hace perfecto. La prueba se puede ver en las limitaciones que conlleva la eliminación de imágenes, volúmenes, contenedores y redes. Aunque estos comandos están disponibles, no son tan completos como los usuarios podrían desear.
Aquí verá los principales problemas que encuentran los usuarios, así como las soluciones para ellos. Aprenderá a eliminar imágenes y contenedores de forma sencilla.
La cuestión
La tecnología de contenedores proporciona una forma de visualizar los sistemas operativos. Permite empaquetar una aplicación con todo lo necesario para ejecutarla, lo que le permite actuar independientemente del sistema operativo.
Las imágenes de contenedor son paquetes de aplicaciones ejecutables autónomos que incluyen todo lo necesario para que una aplicación funcione correctamente. Cada imagen contiene tiempo de ejecución, código, configuraciones, herramientas y bibliotecas del sistema.
A medida que usa Docker, estas imágenes se acumulan. Con el tiempo, se acumula una gran cantidad de imágenes, volúmenes de datos y contenedores no utilizados, lo que crea un entorno Docker abarrotado. Cuando esto sucede, es necesario actualizar el entorno para que la plataforma funcione como debería.
Hay varios comandos que pueden hacer que esto suceda, así que echemos un vistazo a las principales formas de ordenar su entorno Docker.
Eliminar imágenes de Docker
Antes de poder eliminar las imágenes innecesarias, debe distinguirlas de las útiles. Esto se puede hacer fácilmente enumerando todas las imágenes que contiene su sistema mediante el comando de administración de imágenes.
Así es como se ve:
$ docker image # enumera las imágenes creadas más recientemente
O
$ docker image -a # listar todas las imágenes
Con el segundo comando, verá todas las imágenes de su ventana acoplable. Todo lo que tienes que hacer es encontrar las llamadas "imágenes colgantes". Todas estas son imágenes de Docker que no contienen una etiqueta. Sin la etiqueta, no hay conexión con las imágenes etiquetadas, lo que significa que ya no son útiles.
Puede eliminar una o más imágenes utilizando el ID de imagen. Para hacer esto, use uno de estos comandos:
$ docker rmi d65c4d6a3580 # eliminar una sola imagen
$ docker rmi 612866ff4869 e19e33310e49 abe0cd4b2ebc #remove multiple images
Una solución más conveniente es usar la bandera de filtro -f para listar todas las imágenes colgantes.
Para eliminar estas imágenes y limpiar el espacio en disco, use uno de los siguientes comandos:
$ docker image prune # eliminar de forma interactiva imágenes colgantes
O
$ docker rmi $ (imágenes de docker -q -f colgando = verdadero)
Puede eliminar todas las imágenes de Docker de forma similar. Enumérelos usando el comando $ docker images –a y luego elimínelos usando lo siguiente:
$ (docker rmi $ (imágenes de docker -a -q)
Otra opción es eliminar las imágenes que siguen un patrón determinado. Para listarlos, use el siguiente comando:
$ docker imágenes -a | grep "patrón"
Luego, elimínelos usando:
$ docker imágenes -a | grep "patrón" | awk '{imprimir $ 3}' | xargs docker rmi
Retirar contenedores
Otra cosa que podría querer hacer después de trabajar con Docker durante un cierto período de tiempo es eliminar uno o más contenedores.
De manera similar a la eliminación de imágenes, primero debe enumerarlas con el siguiente comando:
$ docker ps
O
$ docker ps -a
Cuando encuentre los contenedores que desea eliminar, use su ID para hacerlo.
$ docker rm 0fd99ee0cb61 # eliminar un solo contenedor
$ docker rm 0fd99ee0cb61 0fd99ee0cb61 # eliminar varios contenedores
En caso de que el contenedor que está intentando eliminar se esté ejecutando, puede utilizar el siguiente comando para detenerlo:
$ docker stop 0fd99ee0cb61
$ docker rm -f 0fd99ee0cb61
Por último, puede detener y eliminar todos los contenedores innecesarios mediante los siguientes comandos:
$ docker stop $ (docker ps -a -q) # detener todos los contenedores
$ docker container prune # eliminar de forma interactiva todos los contenedores detenidos
O
$ docker rm $ (docker ps -qa)
Esto le permitirá liberar valioso espacio en disco y comenzar de nuevo.
La última palabra
Como puede ver, eliminar imágenes y contenedores de Docker no es tan abrumador como parece. Ahora que conoce estos comandos, puede tener más control sobre su experiencia con Docker.
Por supuesto, estos son solo algunos de los comandos, y puede usar una variedad de otras combinaciones. Aún así, estos funcionarán bien, así que siéntete libre de probarlos.