Adicionar software a um contêiner existente

Concluído

Seu contêiner personalizado está funcionando de modo adequado para sua agência. Com a alta eficiência dos Contêineres de Desenvolvimento, você conseguiu adicionar um contêiner de desenvolvimento predefinido e com os exercícios até agora, conseguiu personalizar a experiência por meio do arquivo devcontainer.json. No entanto, o que acontecerá caso queira adicionar softwares além dos disponíveis nessas imagens ou em contêineres de desenvolvimento pré-configurados?

Introdução à instalação de softwares adicionais

Os softwares adicionais poderão incluir outra pilha de tecnologia para sua agência. Por exemplo, talvez você queira incluir o Node.js em um dos seus contêineres de desenvolvimento porque sabe que ele faz parte de vários fluxos de trabalho de desenvolvimento.

Quando você executou Contêineres de Desenvolvimento: adicionar arquivos de configuração do contêiner de desenvolvimento, uma pasta .devcontainer foi adicionada ao aplicativo. Ela contém um arquivo devcontainer.json, baseado nesta imagem de contêiner. Embora essa imagem ofereça várias opções para nossa equipe, podemos optar por iterá-los instalando mais softwares.

Métodos para a instalação de software

É possível instalar softwares por meio do terminal integrado. A maioria das imagens de contêiner se baseia no Debian ou no Ubuntu, em que os comandos apt ou apt-get são usados para instalar novos pacotes.

Importante

Sempre que você instalar algo de apt-get, primeiro execute apt-get update. Esse comando atualiza a lista de pacotes e repositórios de pacote para que você tenha a lista mais atual armazenada em cache.

Mas se você fizer alterações na pasta .devcontainer e precisar recompilar o contêiner, precisará reinstalar tudo o que tiver sido instalado manualmente. Para evitar esse problema, use a propriedade postCreateCommand em devcontainer.json, como mencionado na unidade anterior.

A prática mais eficiente, que mantém suas alterações mesmo após a recriação, é instalar softwares por meio de um Recurso.

Instalação de softwares por meio de Recursos

Como mencionado na unidade 5 deste módulo, os "Recursos" do contêiner de desenvolvimento são unidades autônomas e compartilháveis de configuração de contêiner de desenvolvimento e de código de instalação. O nome vem da ideia de que referenciar um deles permite que você adicione, de forma rápida e fácil, mais ferramentas, runtime ou biblioteca de "Recursos" a seu contêiner de desenvolvimento para uso por você ou seus colaboradores.

Ao usar o comando Contêineres de Desenvolvimento: Adicionar Arquivos de Configuração de Contêiner de Desenvolvimento do VS Code, você verá uma lista de scripts para personalizar as configurações existentes de contêineres de desenvolvimento, seja para instalar o Git ou a CLI do Azure.

Quando você recompilar e reabrir em seu contêiner, os recursos selecionados estarão disponíveis em seu devcontainer.json:

"features": {
    "ghcr.io/devcontainers/features/azure-cli:1": {
        "version": "latest"
    }
}

O comando Contêineres de Desenvolvimento: Configurar Recursos de Contêiner do VS Code permite que você atualize uma configuração existente.

Agora os Recursos originados na interface do usuário do VS Code vêm de um índice central, por meio do qual você pode explorar e até mesmo contribuir.

Você pode examinar mais informações sobre como os Recursos funcionam e sua distribuição.

Neste exercício, você instalou o Node.js. Depois você verificará se o Node.js está disponível no contêiner em execução.