GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo usar el comando de ejecución de Docker con ejemplos

Introducción

Uno de los primeros y más importantes comandos que aprenden los usuarios de Docker es docker run dominio. Esto no sorprende, ya que su función principal es crear y ejecutar contenedores.

Hay muchas maneras diferentes de ejecutar un contenedor. Al agregar atributos a la sintaxis básica, puede configurar un contenedor para que se ejecute en modo separado, establecer un nombre de contenedor, montar un volumen y realizar muchas más tareas.

En este tutorial, aprenderá a usar docker run Comandos con ejemplos.

Requisitos previos

  • Acceso a una línea de comando/ventana de terminal
  • Una cuenta de usuario con sudo privilegios
  • Una instalación de Docker existente

Cómo utilizar el comando ejecutar docker

La sintaxis básica del comando es:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

Para ejecutar un contenedor, lo único que debe incluir en el comando es la imagen en la que se basa:

docker run [docker_image]

Puede ejecutar contenedores desde imágenes de Docker almacenadas localmente. Si usa una imagen que no está en su sistema, el software la extrae del registro en línea.

Como ejemplo, usamos un Dockerfile para crear una imagen Docker de muestra con la tarea de repetir el mensaje Hello World . Para nosotros, la imagen tiene el ID e98b6ec72f51 . El nombre de su imagen diferirá según el contenedor que desee ejecutar.

El comando para ejecutar nuestro contenedor de muestra sería:

docker run e98b6ec72f51

El contenedor realiza la tarea prescrita (hace eco del mensaje Hello World ) y luego se detiene.

Ejecutar un contenedor con un nombre específico

Cuando usas el run básico comando, Docker genera automáticamente un nombre de contenedor con una cadena de números y letras seleccionados al azar.

Dado que existe una pequeña posibilidad de que pueda recordar o reconocer los contenedores por estos nombres genéricos, considere establecer el nombre del contenedor en algo más fácil de recordar.

Usando el --name El atributo le permite asignar un nombre de contenedor. El comando para ejecutar un contenedor con un nombre específico es:

docker container run --name [container_name] [docker_image]

Por ejemplo, podemos ejecutar el contenedor de muestra y darle el nombre instancia_contenedor usando el comando:

docker container run --name container_instance e98b6ec72f51

Puede comprobar si ha establecido correctamente un nombre de contenedor mostrando una lista de todos los contenedores (en ejecución y detenidos) con el comando:

docker ps -a

Como en la imagen a continuación, debería ver su contenedor recién creado.

Ejecutar un contenedor en segundo plano (modo separado)

Hay dos formas de ejecutar un contenedor:en modo adjunto (en primer plano) o en modo separado (en el fondo).

De forma predeterminada, Docker ejecuta el contenedor en modo adjunto. Lo que significa que está adjunto a la sesión de la terminal, donde muestra la salida y los mensajes.

Si desea mantener separados el contenedor y la sesión de terminal actual, puede ejecutar el contenedor en segundo plano usando -d atributo. El uso del modo desconectado también le permite cerrar la sesión de terminal abierta sin detener el contenedor.

El comando para ejecutar un contenedor en segundo plano es:

docker container run -d [docker_image]

Para nuestro ejemplo, el comando es:

docker container run -d e98b6ec72f51

El resultado que reciba será similar al que ve en la imagen de arriba. El contenedor ejecutará el proceso y luego se detendrá. No se mostrará ningún otro resultado dentro de la sesión del terminal.

Ejecutar un contenedor de forma interactiva

Docker le permite ejecutar un contenedor en modo interactivo . Esto significa que puede ejecutar comandos dentro del contenedor mientras aún se está ejecutando.

Al usar el contenedor de forma interactiva, puede acceder a un símbolo del sistema dentro del contenedor en ejecución. Para hacerlo, ejecute el siguiente comando:

docker container run -it [docker_image] /bin/bash

El símbolo del sistema cambiará y lo trasladará al bash shell. como en el ejemplo a continuación.

Ejecutar un contenedor y publicar puertos de contenedores

Cuando ejecuta un contenedor, la única forma de acceder al proceso es desde dentro. Para permitir conexiones externas al contenedor, debe abrir (publicar) puertos específicos.

Tienes que agregar el -p opción para docker run comando, así como la siguiente información:

-p [host_ip]:[host_port]:[container_port]

El host_ip El elemento es opcional y no necesita especificarlo al ejecutar el comando.

Por ejemplo, para asignar el puerto TCP 80 en el contenedor al puerto 8080 en el host de Docker, ejecutaría:

docker container run -p 8080:80 [docker_image]

Ejecutar un contenedor y montar volúmenes de host

Los contenedores Docker no guardan los datos que producen. Tan pronto como finaliza el proceso, el contenedor se detiene y todo lo que contiene se elimina.

Si desea tener datos persistentes que se almacenen incluso después de que el contenedor se detenga, debe habilitar el uso compartido de volúmenes de almacenamiento.

Para volúmenes de montaje, use -v atributo con la ubicación especificada del directorio donde desea guardar los datos, seguido de dónde se ubicarán esos datos dentro del contenedor.

-v [/host/volume/location]:[/container/storage]

Toda la docker container run el comando es:

docker container run -v [/host/volume/location]:[/container/storage] [docker_image]

Ejecute un contenedor Docker y elimínelo una vez que se complete el proceso

Una vez que un contenedor ejecuta sus tareas, se detiene, pero el sistema de archivos que lo compone permanece en el sistema.

Si solo necesita un contenedor para ejecutar la tarea descrita y no tiene uso de él ni de su sistema de archivos después, puede configurarlo para que se elimine una vez que haya terminado.

Para ejecutar un contenedor que se eliminará automáticamente después de salir, use el comando:

docker container run --rm [docker_image]

Cent OS
  1. Cómo usar el comando wget con ejemplos

  2. Cómo usar el comando ethtool con ejemplos

  3. Cómo usar el comando Hexdump de Linux con ejemplos prácticos

  4. Comando SCP en Linux:cómo usarlo, con ejemplos

  5. Cómo ejecutar un comando en un contenedor Docker en ejecución

Comando alias de Linux:cómo usarlo con ejemplos

Cómo ejecutar Jenkins Container como servicio Systemd con Docker

Cómo usar el comando RPM (con ejemplos)

Cómo usar el comando gunzip de Linux con ejemplos

Cómo usar el comando rm de Linux con ejemplos

Cómo usar el comando de apagado con ejemplos