Usa Cloud Storage con Ruby

En esta página, se muestra cómo realizar tareas básicas en Cloud Storage con la biblioteca cliente de Google Cloud para Ruby y se muestra el código subyacente a fin de realizar en esas tareas.

Los costos se generan en Cloud Storage según los recursos que usas. En esta guía de inicio rápido, por lo general, se usa menos de $0.01 USD en recursos de Cloud Storage.

Antes de comenzar

  1. Obtén la versión 2.3 o posterior de Ruby y la gema Bundler de Ruby.

  2. Abre una ventana de la terminal y navega a un directorio de tu entorno de trabajo:

    mkdir gcs-programmatic-quickstart
    cd gcs-programmatic-quickstart

  3. Clona el repositorio de GitHub que contiene ejemplos del uso de la biblioteca cliente de Cloud Storage para Ruby y viene con un CLI a fin de ejecutar los ejemplos:

    git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples.git

  4. Prepara tu entorno de Ruby mediante la instalación de la biblioteca cliente de almacenamiento para Ruby:

    cd ruby-docs-samples/storage
    bundle install

    bundle install instala la gema google-cloud-storage definida en el Gemfile de ejemplo. Los comandos en este instructivo usan esta gema.

  5. Sign in to your Google Account.

    If you don't already have one, sign up for a new account.

  6. Configurar un proyecto de GCP Console.

    Configurar un proyecto

    Haz clic para realizar alguna de las siguientes acciones:

    • Crear o seleccionar un proyecto.
    • Habilitar las Cloud Storage API necesarias para el proyecto.
    • Crear una cuenta de servicio.
    • Descargar una clave privada como JSON.

    Puedes visualizar y administrar estos recursos en GCP Console en cualquier momento.

  7. Configura tu proyecto como una variable de entorno local:

    Linux o MacOS

    export GOOGLE_CLOUD_PROJECT=[PROJECT-ID]

    Windows

    Con PowerShell:

    $env:GOOGLE_CLOUD_PROJECT=[PROJECT-ID]

    Con el símbolo del sistema:

    set GOOGLE_CLOUD_PROJECT=[PROJECT-ID]

Crea un depósito

Los depósitos son los contenedores básicos que conservan tus datos en Cloud Storage.

Para crear un depósito, haz lo siguiente:

  1. Usa el siguiente comando y un nombre único para crear un depósito:

    bundle exec ruby buckets.rb create my-awesome-bucket

    Este comando usa un depósito llamado my-awesome-bucket. Debes elegir tu propio nombre de depósito, único en todo el mundo.

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    Created bucket: my-awesome-bucket

    Tu depósito está listo y ya puedes comenzar a almacenar tu contenido.

Sube un objeto a tu depósito

Imagen de un gatito.

  1. Haz clic derecho sobre la imagen de arriba y guárdala en algún lugar en tu computadora, como el escritorio.

  2. Usa el comando a continuación para copiar la imagen desde la ubicación donde la guardaste al depósito que creaste:

    bundle exec ruby files.rb upload my-awesome-bucket ~/Desktop/kitten.png kitten.png

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    Uploaded kitten.png

    Ya almacenaste un objeto en tu depósito.

Descarga un objeto de tu depósito

  1. Usa el comando a continuación para descargar la imagen almacenada en tu depósito a algún lugar en tu computadora, como el escritorio:

    bundle exec ruby files.rb download my-awesome-bucket kitten.png ~/Desktop/kitten2.png

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    Downloaded kitten.png

    Ya descargaste un objeto desde tu depósito.

Copia un objeto en el depósito

  1. Usa el comando a continuación para crear una copia de tu imagen en el depósito:

    bundle exec ruby files.rb copy my-awesome-bucket kitten.png my-awesome-bucket kitten3.png

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    kitten.png in my-awesome-bucket copied to kitten3.png in my-awesome-bucket

    Ya copiaste tu objeto en tu depósito.

Enumera los contenidos de un depósito

  1. Usa el comando a continuación para enumerar los contenidos del depósito:

    bundle exec ruby files.rb list my-awesome-bucket

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    kitten.png
    kitten3.png
    

    Ya viste los contenidos de tu depósito.

Otorga acceso a tu depósito

  1. Usa el comando a continuación con el fin de dar permiso a alguna dirección de correo electrónico específica para que también controle los objetos en tu depósito:

    bundle exec ruby iam.rb add_bucket_iam_member my-awesome-bucket roles/storage.objectAdmin user:jane@gmail.com

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    Added user:jane@gmail.com with role roles/storage.objectAdmin to my-awesome-bucket

    Ahora alguien más puede colocar objetos y ver lo que hay en tu depósito.

  2. Para quitar este permiso, ejecuta el siguiente comando:

    bundle exec ruby iam.rb remove_bucket_iam_member my-awesome-bucket roles/storage.objectAdmin user:jane@gmail.com

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    Removed user:jane@gmail.com with role roles/storage.objectAdmin from my-awesome-bucket

    Ya le quitaste al usuario el acceso a este depósito.

Borra objetos

  1. Usa el comando a continuación para borrar un objeto:

    bundle exec ruby files.rb delete my-awesome-bucket kitten.png

    Si se ejecuta correctamente, el comando mostrará lo siguiente:

    Deleted kitten.png

    Esta copia del objeto ya no está almacenada en Cloud Storage (a pesar de que todavía existe la copia que nombraste kitten3.png).

Limpieza

Para evitar que se apliquen cargos a tu cuenta de GCP por los recursos que se usan en esta guía de inicio rápido, realiza los siguientes pasos:

  1. Usa el comando a continuación para borrar kitten3.png de tu depósito:

    bundle exec ruby files.rb delete my-awesome-bucket kitten3.png
  2. Usa el comando a continuación para borrar el depósito:

    bundle exec ruby buckets.rb delete my-awesome-bucket

    Si se ejecuta correctamente, el comando mostrará un mensaje similar a este:

    Deleted bucket: my-awesome-bucket

    Se borraron tu depósito y su contenido.

Pasos siguientes

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Si necesitas ayuda, visita nuestra página de asistencia.