Amostra Node.js para o AWS Cloud9 - AWS Cloud9

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Amostra Node.js para o AWS Cloud9

Este exemplo permite executar alguns scripts Node.js em um Ambiente de desenvolvimento do AWS Cloud9.

A criação deste exemplo pode gerar cobranças em sua conta da AWS. Esses procedimentos incluem possíveis cobranças por serviços, como o Amazon EC2 e o Amazon S3. Para obter mais informações, consulte Definição de preço do Amazon EC2 e Definição de preço do Amazon S3.

Prerequisites

Antes de usar essa amostra, verifique se atende aos requisitos a seguir.

  • Você deve ter um Ambiente de desenvolvimento EC2 do AWS Cloud9 existente. Este exemplo pressupõe que você já tenha um Ambiente do EC2 conectado a uma instância do Amazon EC2 que executa o Amazon Linux ou o Ubuntu Server. Caso tenha um tipo diferente de ambiente ou sistema operacional, poderá ser necessário adaptar as instruções dessa amostra para configurar ferramentas relacionadas. Consulte Criar um Ambiente no AWS Cloud9 para obter detalhes.

  • Você já tem o AWS Cloud9 IDE do ambiente existente aberto. Ao abrir um ambiente, o AWS Cloud9 abre o IDE para esse ambiente no navegador da web. Consulte Abrir um ambiente em AWS Cloud9 para obter detalhes.

Etapa 1: Instalar as ferramentas necessárias

Nesta etapa, instale o Node.js, necessário para executar esse exemplo.

  1. Em uma sessão de terminal no AWS Cloud9 IDE, confirme se o Node.js já está instalado executando o comando node --version . (Para iniciar uma nova sessão de terminal, na barra de menus, selecione Window (Janela), New Terminal (Novo terminal).) Caso tenha êxito, a saída contém o número da versão do Node.js. Se o Node.js estiver instalado, avance para Etapa 2: Adicionar o código do .

  2. Execute o comando yum update (para Amazon Linux) ou o comando apt update (para Ubuntu Server) para ajudar a garantir que as atualizações de segurança e correções de bug mais recentes estejam instaladas.

    Para Amazon Linux:

    sudo yum -y update

    Para Ubuntu Server:

    sudo apt update
  3. Para instalar o Node.js, comece executando esse comando para fazer download do Gerenciador de versão do Node (nvm). (nvm é um script de shell Bash simples e útil para instalar e gerenciar versões do Node.js. Para obter mais informações, consulte Gerenciador de versão do Node no site do GitHub.)

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
  4. Para começar a usar o nvm, feche a sessão de terminal e inicie-a novamente ou extraia o arquivo ~/.bashrc que contém os comandos para carregar o nvm.

    . ~/.bashrc
  5. Execute esse comando para instalar a versão mais recente do Node.js.

    nvm install node

Etapa 2: Adicionar o código do

No AWS Cloud9 IDE, crie um arquivo com esse conteúdo e salve-o com o nome hello.js. (Para criar um arquivo, na barra de menus, selecione File (Arquivo), New File (Novo arquivo). Para salvar o arquivo, escolha File (Arquivo), Save (Salvar).)

console.log('Hello, World!'); console.log('The sum of 2 and 3 is 5.'); var sum = parseInt(process.argv[2], 10) + parseInt(process.argv[3], 10); console.log('The sum of ' + process.argv[2] + ' and ' + process.argv[3] + ' is ' + sum + '.');

Etapa 3: Executar o código

  1. No AWS Cloud9 IDE, na barra de menus, selecione Run (Executar), Run Configurations (Configurações de execução), New Run Configuration (Nova configuração de execução).

  2. Na guia [New] - Idle ([Novo] – Inativo), selecione Runner: (Executor:). Auto e escolha Node.js.

  3. Em Command (Comando), digite hello.js 5 9. No código, 5 representa process.argv[2], e 9 representa process.argv[3]. (process.argv[0] representa o nome do tempo de execução (node) e process.argv[1] representa o nome do arquivo (hello.js).)

  4. Selecione o botão Run (Executar) e compare a sua saída.

    Hello, World! The sum of 2 and 3 is 5. The sum of 5 and 9 is 14.

            Saída do Node.js após a execução do código no AWS Cloud9 IDE.

Etapa 4: Instalar e configurar o AWS SDK for JavaScript in Node.js

Ao executar scripts Node.js no AWS Cloud9, você pode escolher entre o AWS SDK para JavaScript versão 3 (V3) e o AWS SDK para JavaScript versão 2 (V2) mais antigo. Assim como ocorre com a V2, a V3 permite que você trabalhe facilmente com a Amazon Web Services, mas foi escrito na TypeScript e adiciona diversos recursos frequentemente solicitados, como pacotes modularizados.

AWS SDK for JavaScript (V3)

Você pode aprimorar este exemplo para usar o AWS SDK for JavaScript in Node.js para criar um bucket do Amazon S3, listar os buckets disponíveis e excluir o bucket que acabou de criar.

Nesta etapa, instale e configure o módulo cliente do serviço Amazon S3 do AWS SDK for JavaScript in Node.js, que fornece uma forma conveniente para interagir com o serviço Amazon S3 AWS, a partir do código JavaScript.

Se quiser usar outros serviços da AWS, você precisará instalá-los separadamente. Para obter mais informações sobre como instalar módulos do AWS, consulte no Guia do desenvolvedor do AWS (V3).

Depois de instalar o AWS SDK for JavaScript in Node.js, configure o gerenciamento de credenciais no ambiente. O AWS SDK for JavaScript in Node.js precisa dessas credenciais para interagir com os serviços da AWS.

Para instalar o AWS SDK para JavaScript no Node.js

Use o npm para executar o comando install.

npm install @aws-sdk/client-s3

Para obter mais informações, consulte Instalar o SDK para o JavaScript no Guia do desenvolvedor do AWS SDK for JavaScript.

Para configurar o gerenciamento de credenciais em seu ambiente

Sempre que você usar o AWS SDK for JavaScript in Node.js para chamar um serviço da AWS, deverá fornecer um conjunto de credenciais com a chamada. Essas credenciais determinam se o AWS SDK for JavaScript in Node.js tem as permissões apropriadas para realizar a chamada. Se as credenciais não cobrirem as permissões apropriadas, a chamada falhará.

Nesta etapa, armazene as credenciais dentro do ambiente. Para fazer isso, siga as instruções em Ligar para serviços AWS a partir de um ambiente em AWS Cloud9 e retorne a este tópico.

Para obter informações adicionais, consulte Definição de credenciais no Node.js no Guia do desenvolvedor do AWS SDK for JavaScript.

AWS SDK for JavaScript (V2)

Você pode aprimorar este exemplo para usar o AWS SDK for JavaScript in Node.js para criar um bucket do Amazon S3, listar os buckets disponíveis e excluir o bucket que acabou de criar.

Nesta etapa, instale e configure o AWS SDK for JavaScript in Node.js, que fornece uma forma conveniente para interagir com os serviços da AWS, como o Amazon S3, a partir do código do JavaScript. Depois de instalar o AWS SDK for JavaScript in Node.js, configure o gerenciamento de credenciais no ambiente. O AWS SDK for JavaScript in Node.js precisa dessas credenciais para interagir com os serviços da AWS.

Para instalar o AWS SDK para JavaScript no Node.js

Use o npm para executar o comando install.

npm install aws-sdk

Para obter mais informações, consulte Instalar o SDK para o JavaScript no Guia do desenvolvedor do AWS SDK for JavaScript.

Para configurar o gerenciamento de credenciais em seu ambiente

Sempre que você usar o AWS SDK for JavaScript in Node.js para chamar um serviço da AWS, deverá fornecer um conjunto de credenciais com a chamada. Essas credenciais determinam se o AWS SDK for JavaScript in Node.js tem as permissões apropriadas para realizar a chamada. Se as credenciais não cobrirem as permissões apropriadas, a chamada falhará.

Nesta etapa, armazene as credenciais dentro do ambiente. Para fazer isso, siga as instruções em Ligar para serviços AWS a partir de um ambiente em AWS Cloud9 e retorne a este tópico.

Para obter informações adicionais, consulte Definição de credenciais no Node.js no Guia do desenvolvedor do AWS SDK for JavaScript.

Etapa 5: Adicionar código do SDK daAWS

AWS SDK for JavaScript (V3)

Nesta etapa, adicione mais código, dessa vez para interagir com o Amazon S3 para criar um bucket, listar os buckets disponíveis e, em seguida, excluir o bucket que acabou de criar. Esse código será executado mais tarde.

No AWS Cloud9 IDE, crie um arquivo com esse conteúdo e salve-o com o nome s3.js.

if (process.argv.length < 4) { console.log( "Usage: node s3.js <the bucket name> <the AWS Region to use>\n" + "Example: node s3.js my-test-bucket us-east-2" ); process.exit(1); } const { S3Client, ListBucketsCommand, CreateBucketCommand, DeleteBucketCommand } = require("@aws-sdk/client-s3"); const async = require("async"); // To call AWS operations asynchronously. const bucket_name = process.argv[2]; const region = process.argv[3]; const s3 = new S3Client({ region }); const create_bucket_params = { Bucket: bucket_name, CreateBucketConfiguration: { LocationConstraint: region, }, }; const delete_bucket_params = { Bucket: bucket_name }; // List all of your available buckets in this AWS Region. const run = async () => { try { const data = await s3.send(new ListBucketsCommand({})); console.log("My buckets now are:\n"); for (var i = 0; i < data.Buckets.length; i++) { console.log(data.Buckets[i].Name); } } catch (err) { console.log("Error", err); } try { console.log("\nCreating a bucket named " + bucket_name + "...\n"); const data = await s3.send(new CreateBucketCommand(create_bucket_params)); console.log("My buckets now are:\n"); for (var i = 0; i < data.Buckets.length; i++) { console.log(data.Buckets[i].Name); } } catch (err) { console.log(err.code + ": " + err.message); } try { console.log("\nDeleting the bucket named " + bucket_name + "...\n"); const data = await s3.send(new DeleteBucketCommand(delete_bucket_params)); } catch (err) { console.log(err.code + ": " + err.message); } }; run();
AWS SDK for JavaScript (V2)

Nesta etapa, adicione mais código, dessa vez para interagir com o Amazon S3 para criar um bucket, listar os buckets disponíveis e, em seguida, excluir o bucket que acabou de criar. Esse código será executado mais tarde.

No AWS Cloud9 IDE, crie um arquivo com esse conteúdo e salve-o com o nome s3.js.

if (process.argv.length < 4) { console.log('Usage: node s3.js <the bucket name> <the AWS Region to use>\n' + 'Example: node s3.js my-test-bucket us-east-2'); process.exit(1); } var AWS = require('aws-sdk'); // To set the AWS credentials and region. var async = require('async'); // To call AWS operations asynchronously. AWS.config.update({ region: region }); var s3 = new AWS.S3({apiVersion: '2006-03-01'}); var bucket_name = process.argv[2]; var region = process.argv[3]; var create_bucket_params = { Bucket: bucket_name, CreateBucketConfiguration: { LocationConstraint: region } }; var delete_bucket_params = {Bucket: bucket_name}; // List all of your available buckets in this AWS Region. function listMyBuckets(callback) { s3.listBuckets(function(err, data) { if (err) { } else { console.log("My buckets now are:\n"); for (var i = 0; i < data.Buckets.length; i++) { console.log(data.Buckets[i].Name); } } callback(err); }); } // Create a bucket in this AWS Region. function createMyBucket(callback) { console.log('\nCreating a bucket named ' + bucket_name + '...\n'); s3.createBucket(create_bucket_params, function(err, data) { if (err) { console.log(err.code + ": " + err.message); } callback(err); }); } // Delete the bucket you just created. function deleteMyBucket(callback) { console.log('\nDeleting the bucket named ' + bucket_name + '...\n'); s3.deleteBucket(delete_bucket_params, function(err, data) { if (err) { console.log(err.code + ": " + err.message); } callback(err); }); } // Call the AWS operations in the following order. async.series([ listMyBuckets, createMyBucket, listMyBuckets, deleteMyBucket, listMyBuckets ]);

Etapa 6: Executar o código do SDK daAWS

  1. Habilite o código para chamar operações do Amazon S3 de forma assíncrona usando o npm para executar o comando install .

    npm install async
  2. No AWS Cloud9 IDE, na barra de menus, selecione Run (Executar), Run Configurations (Configurações de execução), New Run Configuration (Nova configuração de execução).

  3. Na guia [New] - Idle ([Novo] – Inativo), selecione Runner (Executor):. Auto e escolha Node.js.

  4. Em Command (Comando), digite s3.js my-test-bucket us-east-2, em que my-test-bucket é o nome do bucket que você deseja criar e excluir, e us-east-2 é o ID da região da AWS em que deseja criar o bucket. Para obter mais IDs, consulte Amazon Simple Storage Service (Amazon S3) no Referência geral do Amazon Web Services.

    nota

    Os nomes de buckets do Amazon S3 devem ser exclusivos em toda a AWS — não apenas em sua conta da AWS.

  5. Selecione o botão Run (Executar) e compare a sua saída.

    My buckets now are: Creating a new bucket named 'my-test-bucket'... My buckets now are: my-test-bucket Deleting the bucket named 'my-test-bucket'... My buckets now are:

Etapa 7: Limpeza

Para evitar cobranças contínuas em sua conta da AWS ao terminar de usar este exemplo, exclua o ambiente. Para obter instruções, consulte Exclusão de um ambiente no AWS Cloud9.