Como instalar, executar e excluir aplicativos dentro dos contêineres do Docker - Parte 2

Como instalar, executar e excluir aplicativos dentro dos contêineres do Docker - Parte 2

Seguindo o anterior Docker Artigo, este tutorial discutirá como salvar um contêiner do docker em uma nova imagem, remover um contêiner e executar um Nginx servidor da web dentro de um contêiner.

Requisitos

  • Como instalar o Docker e a execução de contêineres no CentOS/Rhel 8/7 - Parte 1

Como correr e salvar um contêiner do Docker

1. Neste exemplo, vamos executar e salvar um Baseado em Ubuntu Docker Container onde o nginx O servidor será instalado. Mas antes de cometer alterações em um contêiner, primeiro inicie o contêiner com os comandos abaixo que atualizam e instalam Nginx Daemon Into Ubuntu Image:

# Docker Run Ubuntu Bash -C "APT -GET -Y ATUALIZAÇÃO" # Docker Run Ubuntu Bash -C "Apt -Get -y Install nginx" 
Instale o nginx no recipiente do Docker Ubuntu

Se você receber erro 'E: Incapaz de localizar o pacote nginx', então você precisa se conectar a um contêiner com CLI interativa e instalar o nginx como mostrado.

# Docker Run -It Ubuntu Bash # Apt Install nginx # saída 

2. Em seguida, depois Nginx o pacote está instalado, emita o comando Docker ps -l para obter o EU IA ou nome do contêiner em execução.

# docker ps -l 
Encontre o nome do ID do contêiner do Docker

E aplique alterações executando o comando abaixo:

# Docker Commit 5976E4AE287C Ubuntu-Nginx 

Aqui, 5976E4AE287C representa o contêiner EU IA e Ubuntu-nginx representa o nome da nova imagem que foi salva com mudanças comprometidas.

Para visualizar se a nova imagem foi criada com sucesso, basta executar Imagens do Docker Comando e uma lista de todas as imagens salvas serão mostradas.

# imagens do docker 
Docker Container Alterações

As chances são de que o processo de instalação dentro do recipiente termine rapidamente, o que leva a um contêiner não executado (o contêiner é interrompido). Neste caso o Docker PS O comando não mostrará nenhuma saída porque nenhum contêiner está em execução.

Para poder ainda conseguir a execução de ID do contêiner Docker ps -a | cabeça -3 Para produzir os contêineres mais recentes e identificar o contêiner com base no comando emitido para criar o contêiner e o status de saída.

3. Como alternativa, você pode inserir ativamente as sessões de contêineres executando Docker Run -It Ubuntu Bash comandar e executar ainda mais instalar apt-get nginx comando. Enquanto o comando está em execução, destaque -se do contêiner usando Ctrl-P + Ctrl-Q As chaves e o contêiner continuarão funcionando mesmo que o processo de instalação do Nginx termine.

# Docker Run -Ubuntu Bash # apt -get Install nginx 
Instale o nginx no recipiente do docker

Então, obtenha o ID de contêiner em execução com Docker PS e cometer mudanças. Quando terminar, entre novamente para o console de contêineres usando Docker Anexo e tipo saída Para parar o recipiente.

# Docker PS # Docker Anexe 3378689f2069 # saída 
Anexe o contêiner do docker

4. Para testar ainda mais se a imagem recente foi cometida adequadamente (neste caso Nginx O serviço foi instalado), execute o comando abaixo para gerar um novo contêiner que será lançado se o binário nginx foi instalado com sucesso:

# Docker Run Ubuntu-nginx onde o nginx 
Gerar um novo contêiner do Docker

5. Para remover um recipiente, use o rm comando contra um ID ou nome de contêiner, que pode ser obtido usando Docker PS -A comando:

# docker ps -a # sudo docker rm 36488523933a 
Remova o recipiente do docker

Como executar o Nginx dentro do contêiner do Docker

6. Nesta parte, nos concentraremos em como você pode executar e acessar um serviço de rede, como um Nginx servidor da web, dentro do Docker, usando o Ubuntu-nginx imagem criada anteriormente, onde o daemon nginx foi instalado.

A primeira coisa que você precisa fazer é criar um novo contêiner, mapear portas-containers e inserir Shell de contêiner, emitindo o comando abaixo:

# Docker Run -it -p 81:80 Ubuntu -Nginx /Bin /Bash # Nginx & 

Aqui o -p a opção expõe a porta do host à porta do contêiner. Embora a porta do host possa ser arbitrária, com a condição de estar disponível (nenhum outro serviço host deve ouvir nela), a porta do contêiner deve ser exatamente a porta que o daemon interno está ouvindo.

Depois de conectado à sessão de contêineres, comece Nginx Daemon em segundo plano e destacar do console de contêineres pressionando Ctrl-P + Ctrl-Q chaves.

Execute o Nginx dentro do contêiner do Docker

7. Agora, corra Docker PS Para obter o estado do seu contêiner em execução. Você também pode visualizar soquetes de rede do host emitindo o seguinte comando:

# docker ps ou # netstat -tlpn 
Veja o estado de execução do Docker

8. Para visitar a página servida pelo contêiner nginx, abra um navegador de um local remoto na sua LAN e digite o endereço IP da sua máquina usando o protocolo HTTP.

Verifique o Nginx em execução sob contêiner do Docker

9. Para parar o contêiner, execute o seguinte comando seguido de ID ou nome do contêiner:

# Docker PS # Docker Stop Fervent_McCarthy # Docker PS 
Pare de executar o contêiner do Docker

Como alternativa para interromper o contêiner em execução, insira o prompt de comando do shell de contêiner e digite a saída para terminar o processo:

# Docker Anexar fervent_mcCarthy # saída 

Esteja ciente de que o uso desse tipo de contêiner para executar servidores da Web ou outros tipos de serviços são mais adequados apenas para fins de desenvolvimento ou testes devido ao fato de os serviços estarem ativos apenas enquanto o contêiner está em execução. Sair do contêiner interrompe todos os serviços em execução ou quaisquer alterações feitas.

Leitura adicional:

Parte 3: Crie e configure automaticamente imagens do Docker com o Dockerfile no CentOS/RHEL 8/7 Parte 4: Como monitorar os contêineres do Docker no Linux