Armazene pacotes Apt no Artifact Registry

Este início rápido mostra como configurar um repositório Apt privado do Artifact Registry, adicionar um pacote Debian ao repositório e instalar o pacote numa VM do Compute Engine que execute um sistema operativo baseado no Debian.

Para saber mais sobre a gestão de pacotes Debian, consulte o artigo Trabalhar com pacotes Debian.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Artifact Registry API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Artifact Registry API.

    Enable the API

  8. Inicie o Cloud Shell

    O Cloud Shell vem pré-instalado com a CLI do Google Cloud. A CLI gcloud fornece a interface de linhas de comando principal para Google Cloud.

    Inicie o Cloud Shell:

    1. Aceda à Google Cloud consola.

      Google Cloud consola

    2. Na Google Cloud consola, clique em Ativar Cloud Shell Botão Ativar Cloud Shell.

    É aberta uma sessão do Cloud Shell num frame na parte inferior da consola. Vai usar esta shell para executar os comandos gcloud para criar uma VM e um repositório.

    Crie um repositório

    Crie o repositório para os seus artefactos.

    1. Crie o repositório:

      Consola

      1. Abra a página Repositórios na Google Cloud consola.

        Abra 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 formato.

      5. Em Tipo de localização, selecione Região e, de seguida, escolha a localização us-west1.

      6. Clique em Criar.

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

      gcloud

      1. No Cloud Shell, execute o seguinte comando para criar um novo repositório Apt no projeto atual com o nome quickstart-apt-repo na localização us-west1.

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

        gcloud artifacts repositories list
        

    Já pode adicionar um pacote ao repositório.

    Adicione um pacote ao repositório

    Pode carregar um pacote para um repositório através da CLI Google Cloud ou importar um pacote armazenado no Cloud Storage. Se criar pacotes com o Cloud Build, a compilação pode armazenar os pacotes no Cloud Storage para que os possa importar.

    Para este início rápido, carrega um ficheiro de exemplo através do comando gcloud artifacts apt upload.

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

      apt download apt-dpkg-ref
      

      O Apt transfere 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 obter o nome do ficheiro da folha de referência rápida do Apt. O nome do ficheiro é semelhante a apt-dpkg-ref_5.3.1+nmu2_all.deb.

    2. Para simplificar os comandos gcloud, defina o repositório predefinido como quickstart-apt-repo e a localização predefinida como us-west1. Depois de definir os valores, não precisa de os especificar em gcloud comandos que requerem um repositório ou uma localização.

      Para definir o repositório, execute o comando:

      gcloud config set artifacts/repository quickstart-apt-repo
      

      Para definir a localização, execute o comando:

      gcloud config set artifacts/location us-west1
      

      Para mais informações sobre estes comandos, consulte a documentação gcloud config set.

    3. Execute o comando gcloud artifacts apt upload para carregar o 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.

    Veja o pacote no repositório

    Confirme se o pacote foi adicionado ao repositório.

    Consola

    1. Abra a página Repositórios na Google Cloud consola.

      Abra a página Repositórios

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

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

    gcloud

    Para apresentar uma lista dos 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
    

    Crie uma VM

    Crie uma nova VM do Compute Engine onde vai instalar o pacote de exemplo.

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

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

    Por predefinição, a VM não tem os âmbitos de acesso necessários para trabalhar com o repositório. O sinalizador --scopes define o âmbito de acesso da VM como cloud-platform.

    Configure o gestor de pacotes

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

    1. Aceda à página de instâncias de VM.

      Abra a página de instâncias de VM

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

    3. Execute gcloud init para inicializar a CLI gcloud na sua VM.

    4. Atualizar apartamento:

      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 aceder aos pacotes do Artifact Registry:

      echo 'deb ar+https://us-west1-apt.pkg.dev/projects/PROJECT quickstart-apt-repo main' | sudo tee -a  /etc/apt/sources.list.d/artifact-registry.list
      

      Substitua PROJECT pelo seu Google Cloud ID do projeto.

    Instale o pacote

    Instale o pacote que 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 devolvidas têm o seguinte aspeto:

      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 incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

    Antes de remover o repositório, certifique-se de que todos os pacotes que quer manter estão disponíveis noutra localização.

    Para eliminar o repositório:

    Consola

    1. Abra a página Repositórios na Google Cloud consola.

      Abra a página Repositórios

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

    3. Clique em Eliminar.

    gcloud

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

      gcloud artifacts repositories delete quickstart-apt-repo
      
    2. Se quiser remover as predefinições do repositório e da localização que configurou para a configuração gcloud ativa, execute os seguintes comandos:

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

    Para eliminar a VM que criou, execute o seguinte comando:

    gcloud compute instances delete quickstart-apt-vm
    

    O que se segue?