Ir para o conteúdo principal

Sonatype Nexus

Introdução

 

Nexus é um gerenciador de repositório. Ele permite que você faça proxy, colete e gerencie suas dependências. Utilizamos o Nexus para fazer proxy do nuget.org, maven, docker.io ou outros repositórios de contêineres, assim como armazenamento dos mesmos criados por nós.

Orientações

Solicitação para publicação de pacote

Para publicação de um pacote, é necessário abrir um chamado no GLPI, onde serão solicitadas as seguintes informações:

 
  • Nome do pacote
  • Anexo do pacote
  • Tipo de pacote

  Repositórios suportados: 
  - NuGet

Suporte a outros repositórios serão desenvolvidos conforme a necessidade.

Não é permitido que o pacote possua dados sensíveis em seu código fonte.

Consumo dos recursos do Nexus

O Nexus atua como um proxy que armazena em cache todos os pacotes ou imagens Docker para otimizar o consumo, tempo de execução e tempo de restauração de pacotes e build de imagens.

Pacotes NuGet

Para usar o servidor Nexus no seu Visual Studio é necessário ir até Ferramentas>Opções>Gerenciador de Pacotes do NuGet>Origens do NuGet e adicionar a origem https://nuget.okd.local/repository/nuget-hosted/ conforme a imagem abaixo:

image-1643647355924.png
Fig. 1 - Tela de configuração de origens do pacote da IDE Visual Studio

Após a configuração, sua IDE estará preparada para restaurar pacotes do Nexus, assim como listar os pacotes na tela de instalação de pacotes, conforme ilustrado na imagem abaixo.

image-1652966690909.png
Fig 2 - Tela de instalação de pacotes no Visual Studio

Para configuração em outras IDEs consulte a documentação da IDE desejada.

Para restaurações manuais onde será necessário especificar a origem dos pacotes, como por exemplo, no comando dotnet restore utilize a URL: https://nuget.okd.local/repository/api.nuget-group/index.json

Imagens Docker

Para usar o servidor Nexus em uma imagem Docker, basta que a fonte da imagem seja alterada para a fonte de imagens Docker do Nexus, conforme o exemplo abaixo:

Ao invés de:

docker pull mcr.microsoft.com/mssql/server:2019-latest

Utilize:

docker pull registry.okd.local/mssql/server:2019-latest

Isso fará com que a imagem seja armazenada no Nexus, otimizando o tempo de download.