Armazenar pacotes Apt no Artifact Registry

Neste guia de início rápido, mostramos como configurar um repositório Apt privado do Artifact Registry, adicionar um pacote Debian a ele e instalar o pacote em uma VM do Compute Engine que executa um sistema operacional baseado em Debian.

Para saber mais sobre como gerenciar pacotes Debian, consulte Como trabalhar com pacotes Debian.

Antes de começar

  1. In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.

    Go to project selector

  2. Verify that billing is enabled for your Trusted Cloud project.

  3. Enable the Artifact Registry API.

    Enable the API

  4. Instalar a CLI gcloud

    1. Instale e inicialize a Google Cloud CLI se ela ainda não estiver instalada. Para uma instalação atual, atualize os componentes da Google Cloud CLI com o comando:

      gcloud components update
      

      Para verificar sua versão da CLI gcloud, execute o comando:

      gcloud version
      

    Criar um repositório

    Crie o repositório para seus artefatos.

    1. Crie o repositório:

      Console

      1. Abra a página Repositórios no console do Trusted Cloud .

        Abrir a página Repositórios

      2. Clique em Criar repositório.

      3. Especifique quickstart-apt-repo como o nome do repositório.

      4. Selecione Apt como o formato.

      5. Em Tipo de local, selecione Região e escolha o local u-france-east1.

      6. Clique em Criar.

      O repositório é adicionado à lista de repositórios.

      gcloud

      1. No Cloud Shell, execute o comando a seguir para criar um novo repositório Apt no projeto atual chamado quickstart-apt-repo no local u-france-east1.

        gcloud artifacts repositories create quickstart-apt-repo \
            --repository-format=apt \
            --location=u-france-east1 \
            --description="Apt repository"
        
      2. Execute o seguinte comando para verificar se o repositório foi criado:

        gcloud artifacts repositories list
        

    Agora você pode adicionar um pacote ao repositório.

    Adicionar um pacote ao repositório

    É possível fazer upload de um pacote para um repositório usando a Google Cloud CLI ou importar um pacote armazenado no Cloud Storage.

    Neste guia de início rápido, você vai fazer upload de um arquivo de amostra usando o comando gcloud artifacts apt upload.

    1. No Cloud Shell, faça o download da folha de referência rápida do Apt com o comando:

      apt download apt-dpkg-ref
      

      O Apt baixa a versão mais recente do pacote disponível nos repositórios Apt configurados.

      Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB]
      Fetched 113 kB in 0s (428 kB/s)
      

      Execute ls para conseguir o nome do arquivo da folha de referência rápida do Apt. O nome do arquivo é semelhante a apt-dpkg-ref_5.3.1+nmu2_all.deb.

    2. Para simplificar os comandos gcloud, defina o repositório padrão como quickstart-apt-repo e o local padrão como u-france-east1. Depois que os valores forem definidos, não será necessário especificá-los nos comandos gcloud que exigem um repositório ou local.

      Para definir o repositório, execute o comando:

      gcloud config set artifacts/repository quickstart-apt-repo
      

      Para definir o local, execute o comando:

      gcloud config set artifacts/location u-france-east1
      

      Saiba mais sobre esses comandos na documentação do gcloud config set.

    3. Execute o comando gcloud artifacts apt upload para fazer upload do pacote para o repositório:

      gcloud artifacts apt upload quickstart-apt-repo \
          --source=FILE_NAME
      

      Substitua FILE_NAME pelo caminho para a folha de referência rápida do Apt.

    Ver o pacote no repositório

    Verifique se o pacote foi adicionado ao repositório.

    Console

    1. Abra a página Repositórios no console do Trusted Cloud .

      Abrir a página Repositórios

    2. Na lista de repositórios, clique em quickstart-apt-repo.

      A página Pacotes lista os pacotes no repositório.

    gcloud

    Para listar os pacotes no repositório quickstart-apt-repo, execute o comando:

     gcloud artifacts packages list
    

    Para ver as versões de um pacote no quickstart-apt-repo, execute o comando:

    gcloud artifacts versions list --package=apt-dpkg-ref
    

    Criar uma VM

    Crie uma nova VM do Compute Engine em que você vai instalar o pacote de amostra.

    No Cloud Shell, execute o comando a seguir para criar uma instância de VM chamada quickstart-apt-vm:

    gcloud compute instances create quickstart-apt-vm \
        --image-family=debian-10 \
        --image-project=debian-cloud \
        --scopes=cloud-platform
    

    Por padrão, a VM não tem os escopos de acesso necessários para trabalhar com o repositório. A flag --scopes define o escopo de acesso da VM como cloud-platform.

    Configurar o gerenciador de pacotes

    Para instalar um pacote na VM, adicione o repositório criado ao arquivo de configuração do Apt que define repositórios de pacotes.

    1. Acesse a página "Instâncias de VM".

      Abra a página "Instâncias de VM"

    2. Na linha com sua VM, clique em SSH. Uma nova janela será aberta com uma sessão de terminal na VM.

    3. Execute gcloud init para inicializar a Google Cloud CLI na VM.

    4. Atualizar apt:

      sudo apt update
      
    5. Instale o auxiliar de credenciais do Apt na VM para permitir que o Apt faça a autenticação:

      sudo apt install apt-transport-artifact-registry
      
    6. Configure a VM para acessar pacotes do Artifact Registry:

      echo 'deb ar+https://u-france-east1-apt.s3nsregistry.fr/projects/PROJECT quickstart-apt-repo main' | sudo tee -a  /etc/apt/sources.list.d/artifact-registry.list
      

      Substitua PROJECT pelo Trusted Cloud by S3NS ID do projeto.

    Instale o pacote

    Instale o pacote que você adicionou ao repositório.

    1. Atualize a lista de pacotes disponíveis:

      sudo apt update
      
    2. Instale o pacote no seu repositório.

      sudo apt install apt-dpkg-ref/quickstart-apt-repo
      

      As informações de instalação retornadas são semelhantes ao exemplo a seguir:

      Reading package lists... Done
      Building dependency tree
      Reading state information... Done
      Selected version '5.3.1+nmu2' (Debian:10.7/stable, namespaces/my-repo/repositories/quickstart-apt-repo:quickstart
      -apt-repo [all]) for 'apt-dpkg-ref'
      The following NEW packages will be installed:
        apt-dpkg-ref
      0 upgraded, 1 newly installed, 0 to remove and 3 not upgraded.
      Need to get 113 kB of archives.
      After this operation, 128 kB of additional disk space will be used.
      Get:1 http://deb.debian.org/debian buster/main amd64 apt-dpkg-ref all 5.3.1+nmu2 [113 kB]
      Fetched 113 kB in 0s (693 kB/s)
      Selecting previously unselected package apt-dpkg-ref.
      (Reading database ... 39506 files and directories currently installed.)
      Preparing to unpack .../apt-dpkg-ref_5.3.1+nmu2_all.deb ...
      Unpacking apt-dpkg-ref (5.3.1+nmu2) ...
      Setting up apt-dpkg-ref (5.3.1+nmu2) ...
      

    Limpar

    Para evitar cobranças na sua conta do Trusted Cloud pelos recursos usados nesta página, siga estas etapas.

    Antes de remover o repositório, verifique se os pacotes que você quer manter estão disponíveis em outro local.

    Para excluir o repositório:

    Console

    1. Abra a página Repositórios no console do Trusted Cloud .

      Abrir a página Repositórios

    2. Na lista de repositórios, selecione quickstart-apt-repo.

    3. Clique em Excluir.

    gcloud

    1. Para excluir o repositório quickstart-apt-repo, execute o seguinte comando:

      gcloud artifacts repositories delete quickstart-apt-repo
      
    2. Se quiser remover as configurações padrão de repositório e localização que definiu como configuração ativa gcloud, execute os seguintes comandos:

      gcloud config unset artifacts/repository
      gcloud config unset artifacts/location
      

    Para excluir a VM criada, execute o seguinte comando:

    gcloud compute instances delete quickstart-apt-vm
    

    A seguir