Cómo instalar, ejecutar y eliminar aplicaciones dentro de los contenedores Docker - Parte 2
- 759
- 11
- Norma Sedillo
Siguiendo el anterior Estibador Artículo, este tutorial discutirá cómo guardar un contenedor Docker en una nueva imagen, eliminar un contenedor y ejecutar un Nginx servidor web dentro de un contenedor.
Requisitos
- Cómo instalar Docker y ejecutar contenedores en CentOS/RHEL 8/7 - Parte 1
Cómo ejecutar y guardar un contenedor Docker
1. En este ejemplo, ejecutaremos y guardaremos un Basado en Ubuntu Container Docker donde el nginx Se instalará el servidor. Pero antes de cometer cualquier cambio en un contenedor, primero inicie el contenedor con los comandos a continuación que actualiza e instala Nginx Daemon en la imagen de Ubuntu:
# Docker Run Ubuntu Bash -C "Apt -Get -y Update" # Docker Run Ubuntu Bash -C "APT -GET -Y Install Nginx"Instale Nginx en el contenedor de Ubuntu Docker
Si recibe error 'E: No se puede localizar el paquete Nginx', luego debe conectarse a un contenedor con CLI interactiva e instalar Nginx como se muestra.
# Docker Run -it Ubuntu bash # apt install nginx # salir
2. Luego, después Nginx Se instala el paquete, emita el comando Docker PS -L
para obtener el IDENTIFICACIÓN o nombre del contenedor en ejecución.
# Docker PS -LEncontrar el nombre de la identificación del contenedor de Docker
Y aplique los cambios ejecutando el siguiente comando:
# Docker Commit 5976E4AE287C Ubuntu-Nginx
Aquí, 5976E4AE287C
representa el contenedor IDENTIFICACIÓN
y ubuntu-nginx
representa el nombre de la nueva imagen que se ha guardado con cambios comprometidos.
Para ver si la nueva imagen se ha creado con éxito, solo se ejecuta Imágenes de Docker
Se mostrará el comando y una lista de todas las imágenes guardadas.
# Imágenes de DockerCambios en el contenedor de Docker
Lo más probable es que el proceso de instalación dentro del contenedor termine rápidamente, lo que conduce a un contenedor que no es de manejo (se detiene el contenedor). En este caso el Docker PS
El comando no mostrará ninguna salida porque ningún contenedor se está ejecutando.
Para poder seguir ejecutando la identificación del contenedor Docker PS -A | Cabeza -3
Para producir los contenedores más recientes e identificar el contenedor en función del comando emitido para crear el contenedor y el estado salido.
3. Alternativamente, puede ingresar activamente las sesiones de contenedores ejecutando Docker Run -it Ubuntu Bash
comandar y ejecutar más apt-get install nginx
dominio. Mientras el comando se ejecuta, se separe del contenedor usando CTRL-P + CTRL-Q
Las teclas y el contenedor continuarán funcionando incluso si el proceso de instalación de NGINX termina.
# Docker Run -it Ubuntu bash # apt -get install nginxInstale Nginx en Docker Container
Luego, obtenga la identificación del contenedor en ejecución con Docker PS
y confirmar cambios. Cuando termine, vuelva a ingresar a la consola de contenedores usando acoplador
y escribir salida
para detener el contenedor.
# Docker PS # Docker Adjunto 3378689f2069 # SalidaAdjuntar contenedor Docker
4. Para probar si la imagen reciente se ha cometido correctamente (en este caso Nginx Se ha instalado el servicio), ejecute el siguiente comando para generar un nuevo contenedor que saldrá si Nginx Binary se instaló correctamente:
# Docker Run Ubuntu-Nginx Whereis NginxGenerar un nuevo contenedor Docker
5. Para eliminar un contenedor, use el RM
comando contra una identificación o nombre de contenedor, que se puede obtener usando Docker PS -A
dominio:
# Docker PS -A # Sudo Docker RM 364888523933aEliminar el contenedor Docker
Cómo ejecutar nginx dentro del contenedor Docker
6. En esta parte nos concentraremos en cómo puede ejecutar y acceder a un servicio de red, como un Nginx servidor web, interior Docker, utilizando el ubuntu-nginx
Imagen creada anteriormente donde se instaló el demonio nginx.
Lo primero que debe hacer es crear un nuevo contenedor, asignar puertos de contenedor de host e ingresar el shell de contenedores emitiendo el siguiente comando:
# Docker Run -it -P 81:80 Ubuntu -nginx /bin /bash # nginx &
Aquí el -pag
La opción expone el puerto host al puerto de contenedor. Si bien el puerto de host puede ser arbitrario, con la condición de que debe estar disponible (ningún otro servicio de host debe escucharlo), el puerto del contenedor debe ser exactamente el puerto que el Daemon Inside está escuchando.
Una vez que esté conectado a la sesión de contenedores, comience Nginx demonio en el fondo y separar de la consola de contenedores presionando CTRL-P + CTRL-Q
llaves.
7. Ahora, corre Docker PS
Para obtener el estado de su contenedor en ejecución. También puede ver los enchufes de la red host emitiendo el siguiente comando:
# docker ps o # netstat -tlpnVer el estado de ejecución del contenedor Docker
8. Para visitar la página servida por el contenedor Nginx, abra un navegador desde una ubicación remota en su LAN y escriba la dirección IP de su máquina utilizando el Protocolo HTTP.
Verifique NGINX Running en Container Docker9. Para detener el contenedor, ejecute el siguiente comando seguido de ID de contenedor o nombre:
# docker ps # docker stop fervent_mccarthy # docker psDeja de ejecutar el contenedor Docker
Como alternativa para detener el contenedor en ejecución, ingrese el símbolo del sistema de shell del contenedor y escriba la salida para finalizar el proceso:
# Docker adjunte fervent_mcCarthy # Salir
Tenga en cuenta que el uso de este tipo de contenedor para ejecutar servidores web u otros tipos de servicios es más adecuado solo para fines de desarrollo o pruebas debido al hecho de que los servicios solo están activos mientras el contenedor se está ejecutando. Salir el contenedor interrumpe todos los servicios en ejecución o cualquier cambio realizado.
Otras lecturas:
Parte 3: Construir y configurar automáticamente las imágenes de Docker con DockerFile en CentOS/RHEL 8/7 Parte 4: Cómo monitorear los contenedores Docker en Linux