Introdução: Executar o primeiro contêiner do Windows
Aplica-se a: Windows Server 2022, Windows Server 2019 e Windows Server 2016
Este tópico descreve como executar seu primeiro contêiner do Windows, após configurar o ambiente conforme descrito em Introdução: Preparar o Windows para contêineres. Para executar um contêiner, primeiro você baixa (em contêineres, também referenciado como uma operação de pull) uma imagem base, que fornece uma camada básica de serviços de sistema operacional para o contêiner. Em seguida, você cria e executa uma imagem de contêiner, que é baseada na imagem base. Para conhecer os detalhes, continue lendo.
Efetuar pull de uma imagem base do contêiner
Todos os contêineres são criados com base em imagens de contêiner. A Microsoft oferece várias imagens iniciais, chamadas de imagens base, entre as quais escolher (para obter mais detalhes, confira Imagens base do contêiner). Esse procedimento efetua pull (baixa e instala) da imagem de base leve do Nano Server.
Abra uma janela de prompt de comando (como o prompt de comando interno, o PowerShell ou o Terminal do Windows) e, em seguida, execute o seguinte comando para baixar e instalar a imagem base:
docker pull mcr.microsoft.com/windows/nanoserver:ltsc2022
Se o Docker não iniciar depois da tentativa de efetuar pull da imagem, o daemon do Docker poderá ficar inacessível. Para resolver esse problema, tente reiniciar o serviço do Docker.
Dica
Se vir uma mensagem de erro que diz
no matching manifest for linux/amd64 in the manifest list entries
, verifique se o Docker não está configurado para executar contêineres do Linux. Para alternar para os contêineres do Windows no Docker, clique com o botão direito do mouse no ícone do Docker e selecione Alternar para contêineres do Windows. Para usar a linha de comando para alternar entre contêineres, execute& $Env:ProgramFiles\Docker\Docker\DockerCli.exe -SwitchDaemon
.Após a conclusão do download da imagem – leia o EULA enquanto espera –, verifique sua existência no sistema consultando o repositório local de imagens do Docker. Executar o comando
docker images
retorna uma lista de imagens instaladas.Este é um exemplo da saída que mostra a imagem do Nano Server.
REPOSITORY TAG IMAGE ID CREATED SIZE microsoft/nanoserver latest 105d76d0f40e 4 days ago 652 MB
Executar um contêiner do Windows
Para este exemplo simples, uma imagem de contêiner "Olá, Mundo" será criada e implantada. Para ter a melhor experiência, execute estes comandos em uma janela de prompt de comandos com privilégios elevados (mas não use o ISE do Windows PowerShell, pois ele não funciona para sessões interativas com contêineres, uma vez que os contêineres parecem travar).
Inicie um contêiner com uma sessão interativa na imagem
nanoserver
inserindo o seguinte comando na janela do prompt de comando:docker run -it mcr.microsoft.com/windows/nanoserver:ltsc2022 cmd.exe
Após o contêiner ser iniciado, a janela de prompt de comando altera o contexto para o contêiner. Dentro do contêiner, criaremos um arquivo de texto "Olá, Mundo" simples e, em seguida, sairemos do contêiner inserindo os seguintes comandos:
echo "Hello World!" > Hello.txt exit
Obtenha a ID do contêiner que você acabou de fechar executando o comando docker ps:
docker ps -a
Crie uma imagem 'HelloWorld' que inclui as alterações no primeiro contêiner que você executou. Para fazer isso, execute o comando docker commit, substituindo
<containerid>
pela ID do seu contêiner:docker commit <containerid> helloworld
Quando tiver concluído, você terá uma imagem personalizada que contém o script hello world. Ele pode ser visto usando o comando docker images.
docker images
Veja um exemplo da saída:
REPOSITORY TAG IMAGE ID CREATED SIZE helloworld latest a1064f2ec798 10 seconds ago 258MB mcr.microsoft.com/windows/nanoserver 2022 2b9c381d0911 3 weeks ago 256MB
Por fim, execute o novo contêiner usando o comando docker run com o parâmetro
--rm
, que remove automaticamente o contêiner quando a linha de comando (cmd.exe) para.docker run --rm helloworld cmd.exe /s /c type Hello.txt
O resultado é que o Docker criou um contêiner com base na imagem 'HelloWorld', iniciou uma instância de cmd.exe no contêiner, e cmd.exe leu o nosso arquivo e gerou os conteúdos para o shell. Como última etapa, o Docker parou e removeu o contêiner.
Executar um contêiner do Windows usando o Windows Admin Center
Você pode usar o Windows Admin Center para executar os contêineres localmente. Especificamente, você usa a extensão Contêineres da sua instância do Windows Admin Center para executar os contêineres. Primeiro, abra o host do contêiner que você deseja gerenciar e, no painel Ferramentas, selecione a extensão Contêineres. Em seguida, selecione a guia Imagens na extensão Contêiner em Host do Contêiner.
Se o host não tiver uma imagem de contêiner base, selecione a opção Pull para abrir as configurações para Efetuar Pull da Imagem de Contêiner:
Nas configurações Efetuar Pull da Imagem de Contêiner, forneça a URL e a marca da imagem. Se você não tiver certeza de qual imagem efetuar pull, o Windows Admin Center fornecerá uma lista de imagens comuns da Microsoft. Você também pode fornecer as credenciais para efetuar pull de uma imagem de um repositório privado. Depois de preencher as informações necessárias, clique em Efetuar Pull. O Windows Admin Center iniciará o processo de pull no host do contêiner. Após a conclusão do download, você deverá ver a nova imagem na guia Imagens.
Selecione a imagem que você deseja executar e clique em Executar.
No menu Executar, defina a configuração do contêiner, como o nome do contêiner, o tipo de isolamento, as portas a serem publicadas e a alocação de memória e CPU. Além disso, você pode acrescentar comandos de execução do Docker que não estão na interface do usuário, como -v para volume persistente. Para obter mais informações sobre os parâmetros de execução do Docker disponíveis, examine a documentação.
Depois de concluir a configuração do contêiner, clique em Executar. Você pode ver o status dos contêineres em execução na guia Contêineres: