Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Você pode usar a janela Contêineres do Visual Studio para ver o que está acontecendo dentro dos contêineres do Docker que hospedam seus aplicativos e para exibir suas imagens de contêiner. Se você estiver acostumado a executar comandos do Docker para exibir e analisar seus contêineres, essa janela fornece uma maneira conveniente de monitorar e interagir com contêineres sem sair do IDE do Visual Studio.
Pré-requisitos
- Área de trabalho do Docker
- Visual Studio 2019 versão 16.4 ou posterior.
- Área de trabalho do Docker
- Visual Studio 2022 ou Visual Studio 2019 versão 16.4 ou posterior.
- Para o nó Docker Compose:
- Visual Studio 2022 versão 17.7 ou posterior
- Docker v2, que é instalado com o Docker Desktop e está ativado por padrão.
Ver informações sobre os seus contentores
A janela Contêineres é aberta automaticamente quando você inicia um projeto .NET em contêiner. Para abrir a janela Contêineres a qualquer momento, selecione Exibir>Outras Janelas>Contêineres do menu Visual Studio. Você também pode usar Ctrl+Q para abrir a caixa Pesquisa do Visual Studio, digite Contêineres e selecione o item Contêineres .
O lado esquerdo da janela mostra a lista de contêineres em sua máquina local. Os contêineres associados à sua solução atual estão em Contêineres de Solução. À direita há um painel com guias para Ambiente, Rótulos, Portas, Volumes, Arquivos e Logs.
A janela Contêineres é aberta automaticamente quando você inicia um projeto .NET em contêiner. Para abrir a janela Contentores em qualquer altura, selecione Exibir>Outros Windows>Contentores no menu do Visual Studio ou pressione Ctrl+K, Ctrl+O. Você também pode usar Ctrl+Q para abrir a caixa Pesquisa do Visual Studio, digite Contêineres e selecione o item Contêineres .
O lado esquerdo da janela mostra a lista de contêineres em sua máquina local. Os contêineres associados à sua solução atual estão em Contêineres de Solução. À direita, há um painel com guias para Ambiente, Rótulos, Portas, Volumes, Ficheiros, Registos e Detalhes.
Se estiveres a usar o Docker Compose e o Visual Studio 2022 versão 17.7 ou posterior, verás uma árvore de nós, com um nó pai para a tua solução e nós filhos para cada projeto inscrito.
Sugestão
Por padrão, a janela Contêineres é encaixada na janela Inspeção quando o depurador está em execução. Você pode personalizar facilmente onde a janela da ferramenta Contêineres está encaixada. Consulte Personalizando layouts de janela no Visual Studio.
Exibir variáveis de ambiente
A guia Ambiente mostra as variáveis de ambiente no contêiner. Você pode definir essas variáveis no Dockerfile, em um arquivo .env ou usando a -e
opção ao iniciar um contêiner usando um comando do Docker.
Observação
As alterações nas variáveis de ambiente não são refletidas em tempo real. Além disso, as variáveis de ambiente nesta guia são as variáveis de ambiente do sistema no contêiner, não as variáveis de ambiente do usuário locais para o aplicativo.
Ver etiquetas
A guia Rótulos mostra os rótulos do contêiner. Os rótulos são uma maneira de definir metadados personalizados em objetos do Docker. O Visual Studio define alguns rótulos automaticamente.
Exibir mapeamentos de porta
Na guia Portas , você pode verificar os mapeamentos de porta para seu contêiner. Portas conhecidas estão vinculadas, então você pode selecionar o link para abrir um navegador para o endereço da porta do host.
Ver volumes
A guia Volumes mostra os nós montados do sistema de arquivos, ou volumes, no contêiner.
Ver o sistema de ficheiros
Na guia Arquivos , você pode exibir o sistema de arquivos do contêiner, incluindo a pasta do aplicativo que contém seu projeto. Usando a guia Arquivos , você pode exibir logs de aplicativos, como logs do IIS (Serviços de Informações da Internet), arquivos de configuração e outros arquivos de conteúdo no sistema de arquivos do contêiner.
Observação
No Visual Studio 2022 versão 17.7 ou posterior, ao direcionar para o .NET 8 ou posterior, o Dockerfile pode conter o comando USER app
, que especifica para rodar o aplicativo com permissões de usuário regulares. A guia Arquivos usa as mesmas permissões, portanto, talvez você não consiga exibir pastas que exigem permissões elevadas para exibir.
Para abrir um arquivo no Visual Studio, clique duas vezes no arquivo ou clique com o botão direito do mouse nele e escolha Abrir. O Visual Studio abre o arquivo no modo somente leitura.
Ver registros
A guia Logs mostra os docker logs
resultados do comando. Por predefinição, o separador mostra os fluxos stdout
e stderr
num contentor, mas pode configurar a saída. Para mais informações, consulte Registo de logs do Docker.
Por padrão, a guia Logs transmite os logs. Você pode pausar o fluxo selecionando o botão Stream Logs na guia. Selecione Stream Logs novamente para retomar o streaming de onde parou.
Por padrão, a guia Logs transmite os logs. Você pode pausar o fluxo selecionando o botão Transmitir na guia. Selecione Transmitir novamente para retomar o streaming de onde parou.
Para limpar os logs, use o botão Limpar na guia Logs . Para obter todos os logs, use o botão Atualizar .
Observação
O Visual Studio redireciona automaticamente stdout
e stderr
para a janela Saídas quando se executam contentores do Windows sem depuração. Esses logs não são exibidos na guia Logs .
Se você estiver usando o Docker Compose com o Visual Studio 2022 versão 17.7 ou posterior, poderá exibir logs de cada contêiner separadamente ou intercalados em um único fluxo de saída. Se você selecionar o nó pai para a solução, verá logs intercalados de todos os projetos Compose. A primeira coluna em cada linha mostra o contêiner que produziu essa linha de saída. Se você quiser ver apenas os logs de um contêiner, selecione o nó desse projeto.
Ver detalhes
A guia Detalhes exibe metadados e informações de tempo de execução sobre a configuração do contêiner no formato JSON. Essas informações incluem variáveis de ambiente, portas, volumes e outras configurações de tempo de execução.
Interaja com contentores
As caixas de diálogo de confirmação para várias tarefas, como remover contentores e imagens ou iniciar mais de 10 contentores ao mesmo tempo, podem exibir avisos. Você pode desativar cada prompt usando a caixa de seleção na janela de diálogo.
Você também pode ativar ou desativar estas opções usando as configurações em Ferramentas>Opções>Ferramentas de Contêiner>Janela de Ferramentas de Contêineres. Para obter mais informações, consulte Configurar ferramentas de contêiner.
Você também pode habilitar ou desabilitar estas opções usando as configurações em Ferramentas>Opções>Ferramentas de Contêiner>Janela de Contêineres. Para obter mais informações, consulte Configurar ferramentas de contêiner.
Iniciar, parar e remover contentores
Por padrão, a janela Contêineres mostra todos os contêineres na máquina gerenciada pelo Docker. Você pode usar os botões da barra de ferramentas na janela Contêineres para iniciar, parar ou excluir um contêiner. A lista de contêineres é atualizada dinamicamente à medida que os contêineres são criados ou removidos.
Para selecionar vários contêineres, por exemplo, para remover mais de um contêiner ao mesmo tempo, use Ctrl+Select. Você será solicitado a confirmar se tenta iniciar ou remover mais de 10 contêineres de cada vez. Você pode desativar os prompts de confirmação, se desejar.
Abrir uma janela de terminal em um contêiner em execução
Você pode abrir uma janela de terminal (prompt de comando ou shell interativo) no contêiner usando o botão Abrir janela do terminal na janela Contêineres .
Para contêineres do Windows, o prompt de comando do Windows é aberto. Para contêineres Linux, uma janela é aberta usando o shell Bash.
Normalmente, a janela do terminal abre fora do Visual Studio como uma janela separada. Se você quiser um ambiente de linha de comando integrado ao IDE do Visual Studio como uma janela de ferramenta encaixável, você pode instalar o Whack Whack Terminal.
Se estiver a direcionar o .NET 8 no Visual Studio 2022, versão 17.7 e posteriores, o seu Dockerfile poderá especificar o comando USER app
, que significa que a sua aplicação é executada com permissões de utilizador normais em vez de permissões elevadas. O terminal abre conforme o utilizador especificou no Dockerfile, que está definido como app
por predefinição para projetos .NET 8. Se nenhum usuário for especificado, o terminal será executado como o root
usuário.
Anexar o depurador a um processo de contêiner
Você pode anexar o depurador a um processo em execução no contêiner usando o botão Anexar ao processo na barra de ferramentas da janela Contêineres . Quando você usa esse botão, a caixa de diálogo Anexar ao processo aparece e mostra os processos que estão sendo executados no contêiner.
Você pode anexar a processos gerenciados no contêiner. Para procurar um processo em outro contêiner, selecione o botão Localizar na caixa de diálogo Anexar ao Processo e selecione outro contêiner na caixa de diálogo Selecionar Contêiner do Docker .
Ver imagens
Você pode visualizar imagens na máquina local usando a guia Imagens no lado esquerdo da janela Contêineres . As imagens extraídas de repositórios externos são agrupadas numa vista em árvore.
O painel direito tem os separadores aplicáveis às imagens: Etiquetas e Detalhes. A guia Detalhes mostra os detalhes de configuração da imagem no formato JSON.
O painel direito tem as guias aplicáveis às imagens: Rótulos, Detalhes e Camadas. A guia Detalhes mostra os detalhes de configuração da imagem no formato JSON.
Para remover uma imagem, clique com o botão direito do rato na imagem na vista de árvore e escolha Remover, ou selecione a imagem e, em seguida, selecione o botão Remover na barra de ferramentas.
Podar recipientes e imagens
Você pode remover facilmente contêineres e imagens que não está usando selecionando o botão Prune na barra de ferramentas da janela Contêineres .
- Se tiver o separador Contentores selecionado, ser-lhe-á pedido que confirme que pretende remover todos os contentores não utilizados.
- Se tiver o separador Contentores selecionado, ser-lhe-á pedido que confirme que pretende remover todos os contentores parados.
- Se você tiver a guia Imagens selecionada, o prompt perguntará se você deseja remover todas as imagens pendentes. Imagens Dangling são imagens de camadas que não estão mais associadas a uma imagem marcada. Eliminar ocasionalmente imagens não utilizadas para ajudar a conservar espaço em disco.