docker-pretty-ps - finalmente un docker legible ps

No está solo en este mundo si durante mucho tiempo no está satisfecho con la apariencia estándar de docker ps . Aunque hay varias soluciones alternativas sobre este tema (vea el final del artículo) , una vez que un entusiasta tuvo que hacer "otra cosa" ... y esto sucedió en el próximo 2019. Su nombre es docker-pretty-ps .

La idea del autor es muy banal: salida horizontal y colores para mayor claridad.



Y como audiencia, las utilidades se denominan "desarrolladores en lugar de ingenieros DevOps o SRE".

Las posibilidades


Con la apariencia, todo debe quedar claro en la imagen. ¿Qué permite la utilidad en el sentido de las funciones? De manera predeterminada, se muestran todos los contenedores en ejecución, pero esto, por supuesto, no se limita a las posibilidades: docker-pretty-ps lo admite:

  • salida de todos los contenedores (incluidos los detenidos);
  • busque contenedores por plantilla: docker-pretty-ps my,try mostrará los contenedores en cuyo nombre se encuentran *my* y *try* (por ejemplo, docker-registry y mysql-redmine );
  • varias opciones de clasificación;
  • campos de salida personalizables para cada contenedor (disponible: container_id , created , ports , image_id , status , command );
  • modo de salida compacto y slim (elimina todos los campos enumerados anteriormente, dejando solo los nombres de los contenedores):

  • datos de salida en formato JSON.

Instalación


El código del proyecto está escrito en Python y los autores notan por separado que no se usan paquetes de Python de terceros, por lo que para comenzar es suficiente tener Docker y Python en el sistema, lo cual es cierto para muchos.

La instalación se realiza a través de pip:

 pip install docker-pretty-ps 

... o un ensamblaje simple:

 git clone https://github.com/politeauthority/docker-pretty-ps.git cd docker-pretty-ps python3 setup.py build python3 setup.py install 

Todo, puedes usar:

 $ docker-pretty-ps -h usage: docker-pretty-ps [-h] [-a] [-s] [-i INCLUDE] [-o [ORDER]] [-r] [-j] [-v] [search] positional arguments: search Phrase to search containers, comma separate multiples. optional arguments: … 

Otras soluciones


A pesar del soporte generalizado en Reddit, esta utilidad ciertamente no es adecuada para todos. En particular, si tiene muchos contenedores (decenas o más), incluso usar el modo slim no siempre será conveniente. Y luego una de las soluciones conocidas puede ser más útil.

docker ps --format


La opción de formato para docker ps no es solo una solución, sino que, en cierto sentido, también es la mejor solución. No requiere nada extra en términos de instalación en el sistema.

El argumento --format es aceptado por muchos comandos de Docker, lo que permite (a través de go-template ) personalizar su salida por sí mismos. Para el equipo docker ps , su soporte apareció hace mucho tiempo (en el lanzamiento de Docker 1.8 de agosto de 2015). Aquí hay un ejemplo de su uso:

 [flant] d.shurupov@kube-node-test ~ $ sudo docker ps --format 'table {{.Names}}\t{{.Image}}' NAMES IMAGE k8s_fluentd_fluentd-jmzjd_loghouse… flant/loghouse-fluentd… k8s_cert-manager_cert-manager-… quay.io/jetstack/cert-manager-controller… k8s_prometheus-config-reloader_… 597141b113d9 k8s_prometheus_prometheus-main-… cc866859f8df k8s_POD_prometheus-main-0_kube-… k8s.gcr.io/pause-amd64:3.1 … 

(Nota: en el ejemplo anterior, los nombres completos de contenedores e imágenes se recortaron manualmente para una mejor visualización).

Se pueden encontrar detalles sobre cómo trabajar con --format , por ejemplo, en este artículo , y se pueden encontrar ejemplos de funciones disponibles en la documentación de Docker .

ctop


Quizás una forma aún más popular es usar la utilidad ctop , que ofrece una interfaz similar a la top clásica, pero para los contenedores Docker:



Su conveniente lanzamiento en la consola se puede reducir a dicho alias:

alias ctop='docker run --rm -ti -v /var/run/docker.sock:/var/run/docker.sock quay.io/vektorlab/ctop:latest'

Además de esto, por supuesto, hay otras interfaces más avanzadas en sus capacidades, pero su descripción está más allá del alcance del artículo. Que usas

PS


Lea también en nuestro blog:

Source: https://habr.com/ru/post/es436896/


All Articles