GNU/Linux >> Tutoriales Linux >  >> Panels >> Docker

21 comandos esenciales que todo usuario de Docker debe conocer

Docker tiene un amplio conjunto de comandos (subcomandos para ser más precisos). No es posible que los uses todos y no hay necesidad de ir por ese logro también.

La mayor parte del tiempo utilizará un cierto subconjunto de comandos para administrar contenedores e imágenes.

Voy a enumerar comandos de Docker comunes pero esenciales que son extremadamente útiles para el uso diario de los usuarios y administradores de Docker.

He dividido estos comandos de Docker en dos categorías:

  1. Ejecutable:comandos que se utilizan para ejecutar y administrar contenedores
  2. Informativo:Comandos que se utilizan para extraer información sobre contenedores, imágenes y capas.

¿Suena bien? Veamos estos comandos Docker imprescindibles junto con ejemplos prácticos.

Comandos de ejecución de Docker [para ejecutar y administrar contenedores]

Estos comandos de Docker se usan para administrar contenedores y crear imágenes. Ejecutan una tarea específica y, por lo tanto, los denominé "Comandos de ejecución de Docker".

En este punto, le recomiendo que actualice su ciclo de vida básico del contenedor Docker con esta imagen:

Dejando eso de lado, veamos los comandos y sus ejemplos.

Si tiene Docker instalado en su sistema, puede ejecutar los ejemplos junto con el tutorial para practicar.

1. Ejecutar ventana acoplable

Docker run se usa para crear un contenedor e iniciarlo inmediatamente.

Este comando primero busca una imagen existente para ejecutar el contenedor y, si no la encuentra, la extrae del repositorio, crea un contenedor a partir de la imagen y luego comienza a ejecutarlo de inmediato.

Ejecutemos un contenedor Nginx desde el repositorio oficial.

[email protected]:~$ docker run --name nginx-root -p 80:80 -d nginx

8411c3df0fd7f57395b0732b1b1963c215040eed669dc8327200db197ff6099b
[email protected]:~$

Con el --name marca, personaliza su nombre local y también asigna el puerto de host al puerto del contenedor. -d o --detach ayuda a ejecutar el contenedor en segundo plano en modo separado.

"docker run" es la versión más corta de "docker container run". Docker recomienda oficialmente la forma más larga, pero la forma más antigua y más corta sigue siendo popular porque los comandos tardan menos en escribirse.

2. Parada de Docker

Este comando se usa para detener contenedores que ya se están ejecutando. La sintaxis es simple:

docker stop container-name-or-id

Detengamos el contenedor que iniciaste en el primer comando.

[email protected]:~$ docker stop nginx-root
nginx-root
[email protected]:~$

En caso de que no haya personalizado un nombre cuando lo ejecutó, puede verificar el nombre generado aleatoriamente con docker ps comando (discutido más adelante).

Cuando utiliza el comando de parada de la ventana acoplable, envía una señal SIGTERM solicitando la terminación, después de lo cual se administra la señal SIGKILL según la situación de terminación.

3. Inicio de la ventana acoplable

Esto se usa para iniciar contenedores que han sido detenidos. La sintaxis es simple:

docker start container-name-or-id

Comencemos con el contenedor Nginx que acaba de detener en el ejemplo anterior.

[email protected]:~$ docker start nginx-root
nginx-root
[email protected]:~$

Tenga en cuenta que, a diferencia de Docker Run, Docker Start no puede crear nuevos contenedores a partir de imágenes. Solo puede 'ejecutar' los contenedores que están en estado detenido.

Docker Run vs Start vs Create:diferencia explicada Para un principiante de docker, términos como docker start, docker run y docker create pueden ser confusos. Este artículo explica la diferencia con ejemplos. Manual de LinuxAbhishek Prakash

4. Ejecutivo de Docker

docker exec , como sugiere su nombre, se utiliza para la ejecución de nuevos comandos dentro de un contenedor que ya se está ejecutando.

[email protected]:~$ docker exec -ti nginx-root /bin/bash
[email protected]:/#

Ahora está ejecutando un shell bash dentro del contenedor.

En -ti , t denota un "terminal" y i denota "interactivo" para mantener STDIN (entrada estándar) abierto incluso si no está conectado.

Para salir del shell del contenedor, solo use el comando exit para regresar a su consola host.

[email protected]:/# exit
exit
[email protected]:~$

5. Renombrar ventana acoplable

Para cambiar el nombre de un contenedor, utilice la siguiente sintaxis:

docker rename old_container_name new_container_name

Cambiemos el nombre del contenedor nginx-root a nginx-toor. ¡Tenga en cuenta que puede hacer esto incluso cuando el contenedor está funcionando!

[email protected]:~$ docker rename nginx-root nginx-toor

6. Docker pausa/despausa

Con docker pause , puede suspender todos los procesos en un contenedor específico. Se utiliza la señal SIGSTOP, que es percibida por el proceso en suspensión.

[email protected]:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
72acb924f667 nginx "nginx -g 'daemon of…" 4 hours ago Up 4 hours 0.0.0.0:80->80/tcp nginx-toor
e2dd68fdd220 wordpress:5.3.0-php7.1-apache "docker-entrypoint.s…" 3 days ago Up 3 days 0.0.0.0:8088->80/tcp wp2_wordpress_1
016709c05add wordpress:5.3.0-php7.1-apache "docker-entrypoint.s…" 3 days ago Up 3 days 0.0.0.0:8080->80/tcp wp1_wordpress_1
656f6761ce0d mariadb:10.4.10-bionic "docker-entrypoint.s…" 8 days ago Up 3 days 3306/tcp wp2_mysql_1
ee953bb14483 mariadb:10.4.10-bionic "docker-entrypoint.s…" 8 days ago Up 3 days 3306/tcp wp1_mysql_1

Hagamos una pausa en el contenedor nginx-toor:

[email protected]:~$ docker pause nginx-toor
nginx-toor

Ahora puede verificar si realmente se detuvo con docker ps comando de nuevo:

[email protected]:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
72acb924f667 nginx "nginx -g 'daemon of…" 4 hours ago Up 4 hours (Paused) 0.0.0.0:80->80/tcp nginx-toor
e2dd68fdd220 wordpress:5.3.0-php7.1-apache "docker-entrypoint.s…" 3 days ago Up 3 days 0.0.0.0:8088->80/tcp wp2_wordpress_1
016709c05add wordpress:5.3.0-php7.1-apache "docker-entrypoint.s…" 3 days ago Up 3 days 0.0.0.0:8080->80/tcp wp1_wordpress_1
656f6761ce0d mariadb:10.4.10-bionic "docker-entrypoint.s…" 8 days ago Up 3 days 3306/tcp wp2_mysql_1
ee953bb14483 mariadb:10.4.10-bionic "docker-entrypoint.s…" 8 days ago Up 3 days 3306/tcp wp1_mysql_1

Para revertir, simplemente use unpause:

[email protected]:~$ docker unpause nginx-toor
nginx-toor

7. Docker matar

docker kill se utiliza para enviar la señal KILL predeterminada a un contenedor. A diferencia de docker stop , envía directamente una señal SIGKILL sin solicitar terminación con la señal SIGTERM.

Es una forma abrupta de forzar la finalización en situaciones de emergencia típicas y, por lo tanto, siempre se recomienda usar docker stop primero.

[email protected]:~$ docker kill nginx-root
nginx-root
[email protected]:~$

8. Compilación de la ventana acoplable

Si está modificando la imagen de Docker, debe crear su imagen personalizada antes de poder usarla para implementar nuevos contenedores.

docker build es el comando para construir tales imágenes modificadas.

Recomiendo leer esta guía detallada sobre el uso de Dockerfile para crear imágenes de Docker personalizadas. Aquí, solo mostraré un ejemplo rápido.

Aquí hay un Dockerfile de muestra:

FROM alpine:latest
RUN apk update
RUN apk add vim

Primero descarga una imagen de Alpine Linux del repositorio oficial. Luego actualiza el caché del paquete y luego instala adicionalmente el editor Vim en él.

Esto significa que el contenedor que se ejecuta desde esta imagen tendrá el editor Vim preinstalado.

Cree la imagen de la siguiente manera:

[email protected]:~/docker-build-test$ docker image build -t docker-build-test-image .

Sending build context to Docker daemon 2.048kB
Step 1/3 : FROM alpine:latest
---> 965ea09ff2eb
Step 2/3 : RUN apk update
---> Using cache
---> b16ea26b03aa
Step 3/3 : RUN apk add vim
---> Using cache
---> b283eaf606c1
Successfully built b283eaf606c1
Successfully tagged docker-build-test-image:latest

La imagen modificada se denomina docker-build-test-image y el comando busca el Dockerfile en el directorio actual.

9. Docker cp

El comando cp ya es muy conocido entre los usuarios experimentados de Linux para copiar archivos y directorios entre diferentes ubicaciones.

Del mismo modo, docker container cp , o simplemente docker cp se utiliza para copiar archivos y directorios entre el contenedor y el host.

[email protected]:~/nginx-root$ docker cp nginx-root:/etc/nginx/nginx.conf ./config

El comando anterior copiará el archivo nginx.conf del contenedor nginx-root a un directorio llamado config que ya debe residir en el directorio de trabajo actual (también llamado nginx-root). Tenga en cuenta la estructura del sistema de archivos similar (/etc/nginx) del contenedor, tal como sería un sistema Linux normal.

10. Docker rm

Similar a la eliminación de archivos y directorios a través de la terminal de Linux, Docker también usa una sintaxis similar para eliminar imágenes y contenedores.

docker rm container_or_image_name_or_id

Intente eliminar el contenedor nginx-root que creó anteriormente en este tutorial:

[email protected]:~$ docker rm nginx-root
nginx-root

El resultado no indicará que se eliminó el contenedor ni nada por el estilo, pero se eliminó de todos modos.

No puede eliminar un contenedor en ejecución. No puede eliminar una imagen que está asociada con un contenedor, incluso una detenida. Cómo eliminar todos los contenedores de Docker (o algunos de ellos) Elimine un contenedor específico o todos los que pertenecen a la misma imagen o todos. Aprenda a eliminar contenedores acoplables en diversas situaciones con estos ejemplos prácticos. Manual de LinuxAbhishek Prakash Cómo eliminar imágenes de Docker:una por una o todasUn artículo completo que analiza varios escenarios de eliminación de imágenes de Docker con ejemplos Manual de LinuxAbhishek Prakash

Resumamos todos los comandos anteriores:

Volveré a crear el contenedor nginx-root para usarlo en otros ejemplos de comandos.

Comandos informativos de Docker [para obtener información sobre contenedores e imágenes]

Los comandos de Docker que le brindan información relacionada con tareas específicas y parámetros legibles existentes se pueden llamar como comandos informativos de Docker.

Aquí, incluyo 11 comandos de Docker para este propósito:

11. Docker ps/contenedor ls

Abreviatura de docker container ls , docker ps se puede usar para enumerar todos los contenedores que se están ejecutando actualmente en un sistema y también verificar su estado con estadísticas adicionales.

[email protected]:~$ docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
e2dd68fdd220 wordpress:5.3.0-php7.1-apache "docker-entrypoint.s…" 3 days ago Up 3 days 0.0.0.0:8088->80/tcp wp2_wordpress_1

016709c05add wordpress:5.3.0-php7.1-apache "docker-entrypoint.s…" 3 days ago Up 3 days 0.0.0.0:8080->80/tcp wp1_wordpress_1

80e12e4a431c nginx "nginx -g 'daemon of…" 3 days ago Up 3 days 0.0.0.0:80->80/tcp nginx-root

656f6761ce0d mariadb:10.4.10-bionic "docker-entrypoint.s…" 7 days ago Up 3 days 3306/tcp wp2_mysql_1

ee953bb14483 mariadb:10.4.10-bionic "docker-entrypoint.s…" 7 days ago Up 3 days 3306/tcp wp1_mysql_1

[email protected]:~$

12. Imágenes acoplables/imagen ls

Si es un usuario experimentado de Linux, es posible que ya esté familiarizado con ls comando que se usa para verificar el contenido del directorio con la terminal de Linux.

Del mismo modo, en Docker, docker image ls o simplemente docker images se usa para verificar la lista de todas las imágenes de Docker existentes dentro de un sistema. Estas imágenes pueden ser oficiales o personalizadas dependiendo de cómo fueron construidas.

[email protected]:~$ docker images

REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 4152a9608752 10 days ago 126MB
avimanyu786/flask-test latest f8e2d6f524ef 2 weeks ago 122MB
avimanyu786/nginx-test latest 5fe5e88b9eaa 2 weeks ago 23MB
wordpress 5.3.0-php7.1-apache f0985bcc2ffb 2 weeks ago 530MB
mariadb 10.4.10-bionic c1c9e6fba07a 2 weeks ago 355MB
avimanyu786/alpine-with-vim latest b283eaf606c1 2 weeks ago 34.7MB
jwilder/nginx-proxy latest d1c0beda6804 3 weeks ago 161MB
nginx alpine b6753551581f 5 weeks ago 21.4MB
python alpine 204216b3821e 5 weeks ago 111MB
alpine latest 965ea09ff2eb 5 weeks ago 5.55MB
mysql latest c8ee894bd2bd 6 weeks ago 456MB
hello-world latest fce289e99eb9 11 months ago 1.84kB
[email protected]:~$

Además de contenedores e imágenes, ls también se usa para fines similares en Docker para administrar redes, volúmenes, nodos y servicios de enjambre.

13. Registros acoplables

Este comando es muy útil en servidores de producción para investigar y resolver problemas. Puede obtener los registros de cualquier contenedor con la ayuda del comando docker logs.

docker logs container_name_or_id

Por ejemplo:

[email protected]:~$ docker logs nginx-toor
178.130.157.61 - - [30/Nov/2019:07:56:14 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36" "-"
178.130.157.61 - - [30/Nov/2019:07:56:14 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36" "-"
.
.
.
.
x64|'|'|No|'|'|0.7d|'|'|..|'|'|AA==|'|'|112.inf|'|'|SGFjS2VkDQoxOTIuMTY4LjkyLjIyMjo1NTUyDQpEZXNrdG9wDQpjbGllbnRhLmV4ZQ0KRmFsc2UNCkZhbHNlDQpUcnVlDQpGYWxzZQ==12.act|'|'|AA==" 400 157 "-" "-" "-"
8.36.123.216 - - [30/Nov/2019:10:32:20 +0000] "GET / HTTP/1.1" 200 612 "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)" "-"
202.142.105.74 - - [30/Nov/2019:12:03:39 +0000] "GET /favicon.ico HTTP/1.1" 404 153 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:70.0) Gecko/20100101 Firefox/70.0" "-"

14. Versión acoplable

Para obtener información detallada sobre la versión de Docker instalada en el sistema, simplemente use:

docker version

Así es como se ve esta información:

[email protected]:~$ docker version
Client: Docker Engine - Community
Version: 19.03.4
API version: 1.40
Go version: go1.12.10
Git commit: 9013bf583a
Built: Fri Oct 18 15:54:09 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.4
API version: 1.40 (minimum version 1.12)
Go version: go1.12.10
Git commit: 9013bf583a
Built: Fri Oct 18 15:52:40 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.2.10
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.0-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.0
GitCommit: fec3683
[email protected]:~$

15. Información acoplable

El siguiente comando le mostrará información de todo el sistema sobre el sistema host donde está instalado Docker:

[email protected]:~$ docker info
Client:
Debug Mode: false
Server:
Containers: 9
Running: 5
Paused: 0
Stopped: 4
Images: 17
Server Version: 19.03.4
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: b34a5c8af56e510852c35414db4c1f4fa6172339
runc version: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
init version: fec3683
Security Options:
apparmor
seccomp
Profile: default
Kernel Version: 4.15.0-50-generic
Operating System: Ubuntu 18.04.2 LTS
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 985.4MiB
Name: localhost
ID: MZTJ:L5UF:WMQ3:VOIO:NR3N:336Q:YX2T:MSOU:5Y2N:MA7V:F6BQ:6UDY
Docker Root Dir: /var/lib/docker
Debug Mode: false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false
WARNING: No swap limit support
[email protected]:~$

16. Docker inspeccionar

La docker inspect El comando se utiliza para revelar información de bajo nivel tanto de contenedores como de imágenes.

Puede obtener información como la suma de comprobación de la imagen, las capas, la dirección IP del contenedor y otra información de red y mucha otra información.

Es aconsejable usar el comando grep para filtrar la salida y obtener solo la información deseada.

En el siguiente ejemplo, inspecciono una imagen de Docker existente llamada avimanyu786/alpine-with-vim:latest .

[email protected]:~$ docker inspect avimanyu786/alpine-with-vim:latest
[
{
"Id": "sha256:b283eaf606c18a4d0cc461ffdf86d53ecb173db5271129090a7421a64b1c514e",
"RepoTags": [
"avimanyu786/alpine-with-vim:latest"
],
"RepoDigests": [],
"Parent": "sha256:b16ea26b03aaf5d9bd84157fbef61670d2f318c1af854ae04f0dbc290afd4b04",
"Comment": "",
"Created": "2019-11-12T11:51:24.458552779Z",
"Container": "5b759e6f98e354a78dfca588eb65316b35f0cfb88c9119844471c8fcba362898",
"ContainerConfig": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
],
"Cmd": [
"/bin/sh",
"-c",
"apk add vim"
],
"Image": "sha256:b16ea26b03aaf5d9bd84157fbef61670d2f318c1af854ae04f0dbc290afd4b04",
.
.
.
.
"Metadata": {
"LastTagTime": "2019-11-12T11:51:24.563369343Z"
}
}
[email protected]:~$

17. Historial acoplable

Descubra el historial de cualquier imagen existente en su sistema Docker con el nombre de imagen del historial de Docker.

El historial de la imagen le indicará los cambios y las confirmaciones realizadas en orden cronológico inverso.

[email protected]:~$ docker history avimanyu786/alpine-with-vim:latest
IMAGE CREATED CREATED BY SIZE COMMENT
b283eaf606c1 2 weeks ago /bin/sh -c apk add vim 27.7MB
b16ea26b03aa 2 weeks ago /bin/sh -c apk update 1.42MB
965ea09ff2eb 5 weeks ago /bin/sh -c #(nop) CMD ["/bin/sh"] 0B
<missing> 5 weeks ago /bin/sh -c #(nop) ADD file:fe1f09249227e2da2… 5.55MB
[email protected]:~$

18. Puerto acoplable

Este comando puede resultar muy útil cuando se administran varios contenedores porque revela muy fácilmente las asignaciones de host a puerto de contenedor:

[email protected]:~$ docker port nginx-root
80/tcp -> 0.0.0.0:80

Aquí puede ver que el puerto de host 80 está asignado al puerto de contenedor 80 para el contenedor denominado nginx-root.

19. Dif de ventana acoplable

Con docker diff, puede inspeccionar los cambios en archivos o directorios en el sistema de archivos de un contenedor. Enumera los archivos y directorios modificados en el sistema de archivos de un contenedor desde que se creó.

Se rastrean tres tipos diferentes de cambios (A/D/C):

  • A:Adición de un archivo o directorio
  • D:Eliminación de un archivo o directorio
  • C:Cambio de un archivo o directorio

Veamos lo mismo para nuestro contenedor nginx-root:

[email protected]:~$ docker diff nginx-root
C /run
A /run/nginx.pid
C /var
C /var/cache
C /var/cache/nginx
A /var/cache/nginx/client_temp
A /var/cache/nginx/fastcgi_temp
A /var/cache/nginx/proxy_temp
A /var/cache/nginx/scgi_temp
A /var/cache/nginx/uwsgi_temp
[email protected]:~$

20. Parte superior de Docker

Una vez más, top es un comando de Linux con el que quizás ya esté familiarizado. Se utiliza para enumerar los procesos en ejecución en el sistema.

Con docker top, lista los procesos que se ejecutan dentro de un contenedor.

docker top container_ID_or_name

Si lo hago con nginx-root en nuestro ejemplo, muestra el siguiente valor.

[email protected]:~$ docker top nginx-root
UID PID PPID C STIME TTY TIME CMD
root 10355 10330 0 07:54 ? 00:00:00 nginx: master process nginx -g daemon off;
systemd+ 10401 10355 0 07:54 ? 00:00:00 nginx: worker process
root 12054 10330 0 10:22 pts/0 00:00:00 /bin/bash
[email protected]:~$

21. Estadísticas de Docker

El comando docker stats se puede usar tal cual y también para contenedores específicos. Le muestra los detalles del contenedor junto con el uso de recursos del sistema.

Primero, veamos su forma genérica:

[email protected]:~$ docker stats
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
72acb924f667 nginx-root 0.00% 2.621MiB / 985.4MiB 0.27% 8.02kB / 8.92kB 6.8MB / 0B 3
e2dd68fdd220 wp2_wordpress_1 0.00% 44.24MiB / 985.4MiB 4.49% 1.9MB / 1.62MB 53.3MB / 61.4kB 11
016709c05add wp1_wordpress_1 0.00% 68.52MiB / 985.4MiB 6.95% 12MB / 4.77MB 136MB / 61.4kB 11
656f6761ce0d wp2_mysql_1 0.05% 70.12MiB / 985.4MiB 7.12% 1.05MB / 1MB 16MB / 2.15MB 30
ee953bb14483 wp1_mysql_1 0.04% 31.73MiB / 985.4MiB 3.22% 1.16MB / 4.76MB 50.6MB / 91.8MB 31

La salida anterior se generará continuamente en tiempo real hasta que salga con Ctrl+C.

Ahora, si lo prueba para un contenedor específico, verá el mismo resultado, pero solo para ese contenedor:

[email protected]:~$ docker stats nginx-root
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
72acb924f667 nginx-root 0.00% 2.621MiB / 985.4MiB 0.27% 8.02kB / 8.92kB 6.8MB / 0B 3

Permítanme resumir también la información de los comandos de Docker:

Para obtener un recurso exhaustivo y completo de todos los comandos de Docker, siempre puede consultar la documentación oficial de Docker.

Notarás un parecido entre los comandos habituales de Linux y algunos comandos de Docker. Creo que es deliberado facilitar la memorización de los comandos de Docker.

Espero que este artículo le resulte útil en su uso diario de Docker. Si tiene más comandos útiles para compartir, no dude en compartirlos a continuación. Comentarios y sugerencias son siempre bienvenidos.


Docker
  1. 20 comandos esenciales de Linux para cada usuario

  2. Temas de sonido en Linux:Lo que todo usuario debe saber

  3. 7 comandos de red de Linux que todo administrador de sistemas debería conocer

  4. 17 comandos de Linux que todo administrador de sistemas debería conocer

  5. Algunos comandos DOCKER

Atajos de teclado de Ubuntu que todo usuario debe conocer

Cómo usar SSH en un contenedor Docker y ejecutar comandos

Los comandos [Docker] más útiles que todo el mundo debería conocer [Ejemplos]

5 comandos de Linux que todo usuario de Linux debe conocer

Comandos de Docker para gestionar el ciclo de vida de los contenedores (guía definitiva)

5 trucos simples de Bash History que todo usuario de Linux debe saber