Monte um bucket do Cloud Storage usando o Cloud Storage FUSE

Saiba como montar um bucket do Cloud Storage como um sistema de arquivos local usando o Cloud Storage FUSE. Assim, é possível interagir com seus objetos usando a semântica padrão de sistema de arquivos.

Neste guia de início rápido, você concluirá as seguintes tarefas:

  • Instalar o Cloud Storage FUSE no Debian ou no Ubuntu

  • Montar o bucket como uma pasta na máquina

  • Fazer upload de um objeto para o bucket

Use a Google Cloud CLI para criar e gerenciar o objeto no bucket de armazenamento e a CLI do gcsfuse para montar o bucket na sua máquina.

Antes de começar

Para configurar um projeto, siga estas etapas:

  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, click Create project to begin creating a new Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Install the Google Cloud CLI.
  5. To initialize the gcloud CLI, run the following command:

    gcloud init
  6. In the Google Cloud console, on the project selector page, click Create project to begin creating a new Google Cloud project.

    Go to project selector

  7. Make sure that billing is enabled for your Google Cloud project.

  8. Install the Google Cloud CLI.
  9. To initialize the gcloud CLI, run the following command:

    gcloud init
  10. Tenha um bucket do Cloud Storage que você queira montar. Se você ainda não tiver um, crie um novo bucket.

Instale o Cloud Storage FUSE

Para instalar o Cloud Storage FUSE, siga as instruções a seguir usando o shell local no Debian ou no Ubuntu:

  1. Adicione o URL de distribuição do Cloud Storage FUSE como uma origem de pacote:

    export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s`
    echo "deb https://packages.cloud.google.com/apt $GCSFUSE_REPO main" | sudo tee /etc/apt/sources.list.d/gcsfuse.list
  2. Importe a chave pública do repositório APT do Google Cloud:

    curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
  3. Atualize a lista de pacotes disponíveis:

    sudo apt-get update
  4. Instale o Cloud Storage FUSE e a dependência FUSE:

    sudo apt-get install fuse gcsfuse
  5. Quando solicitado, pressione Enter para confirmar.

  6. Confirme se o Cloud Storage FUSE foi instalado:

    gcsfuse -v

    Se for bem-sucedido, o comando retornará uma saída semelhante a esta:

    gcsfuse version 0.41.12 (Go version go1.18.4)

Monte o bucket

Para montar o bucket no sistema de arquivos local, siga estas etapas:

  1. Gere o Application Default Credentials usando o comando gcloud auth application-default login:

    gcloud auth application-default login

    O Cloud Storage FUSE carrega automaticamente as credenciais.

  2. Crie um diretório para montar o bucket de armazenamento:

    mkdir "$HOME/mount-folder"
  3. Monte o bucket de armazenamento usando o comando gcsfuse:

    gcsfuse BUCKET_NAME "$HOME/mount-folder"

    Substitua BUCKET_NAME pelo nome do bucket que você quer montar.

    Se bem-sucedido, o comando vai retornar uma saída com um texto semelhante ao seguinte:

    File system has been successfully mounted.

faça upload de um objeto no bucket

Para fazer o download de um objeto de exemplo e fazer upload dele para o bucket montado, siga estas etapas:

Imagem de um gatinho para fazer upload no bucket.

  1. Clique com o botão direito na imagem acima e salve-a em algum lugar do computador, por exemplo, na área de trabalho.

    Também é possível fazer o download da imagem usando o comando cURL curl -O https://cloud.google.com/storage/images/kitten.png.

  2. Copie a imagem do local salvo para a pasta em que o bucket está montado usando o comando cp:

    cp kitten.png "$HOME/mount-folder/kitten.png"
  3. Verifique se a imagem foi copiada para o sistema de arquivos local e se o upload dela para o bucket foi bem-sucedido seguindo as etapas abaixo:

    1. Para verificar se kitten.png foi copiado para o sistema de arquivos local, execute ls na pasta em que o bucket está montado:

      ls "$HOME/mount-folder"

      Se a operação de cópia tiver sido bem-sucedida, kitten.png será retornado na saída.

    2. Para listar o conteúdo do bucket, use o comando gcloud storage ls:

      gcloud storage ls gs://BUCKET_NAME

      Substitua BUCKET_NAME pelo nome do bucket.

      Se o upload da imagem para o bucket foi bem-sucedido, kitten.png será retornado na saída.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, exclua os recursos seguindo estas etapas:

  1. Desconecte o bucket de armazenamento da sua máquina Linux usando a ferramenta fusermount:

    fusermount -u "$HOME/mount-folder"
  2. Para excluir o bucket e tudo que estiver dentro dele, use o comando gcloud storage rm com o sinalizador --recursive:

    gcloud storage rm gs://BUCKET_NAME --recursive

    Substitua BUCKET_NAME pelo nome do bucket.

    Se for bem-sucedido, o comando retornará uma saída semelhante a esta:

    Removing gs://my-bucket/kitten.png#1676488739323620...
     Removing gs://my-bucket/...

A seguir