Free Tier: Instalar o Node Express em uma Instância do Oracle Linux

Neste tutorial, você usa uma conta do Oracle Cloud Infrastructure - Free Tier para configurar uma instância de computação do Oracle Linux. Em seguida, instale um aplicativo Node Express e acesse seu novo aplicativo pela internet. Por fim, este tutorial abrange todas as etapas necessárias para configurar uma rede virtual para o seu host e conectar o host à internet.

As principais tarefas incluem:

  • Configure um compartimento para seu trabalho de desenvolvimento.
  • Instale a sua instância do Oracle Linux e conecte-a à sua VCN (Virtual Cloud Network).
    • Configure uma rede virtual na nuvem do Oracle Cloud Infrastructure e serviços de rede relacionados necessários para que seu host se conecte à internet.
    • Configure chaves de criptografia ssh para acessar o Servidor Oracle Linux.
  • Configure regras de entrada para sua VCN.
  • Configure o NodeJS com uma estrutura Express na sua instância.

Este é um diagrama simplificado da configuração da sua instância do Linux.

Um diagrama dos componentes necessários para executar um aplicativo NodeJS com uma estrutura Express, no Oracle Cloud Infrastructure

Para obter informações adicionais, consulte:

Antes de Começar

Para concluir este tutorial com sucesso, você deve ter o seguinte:

Requisitos

1. Configurar um Compartimento para Desenvolvimento

Configure um compartimento para seu desenvolvimento.

Criar um Compartimento

Crie um compartimento para os recursos criados neste tutorial.

  1. Acesse a Console do Oracle Cloud Infrastructure.
  2. Abra o menu de navegação e clique em Identidade e Segurança. Em Identidade, clique em Compartimentos.
  3. Clique em Criar Compartimento.
  4. Preencha as informações a seguir:
    • Nome: <your-compartment-name>
    • Descrição Compartment for <your-description>.
    • Compartimento Principal: <your-tenancy>(root)
  5. Clique em Criar Compartimento.

Referência: Criar um compartimento

2. Instalar uma Rede Virtual na Nuvem

Use o workflow Iniciar Assistente de VCN para criar uma nova VCN (Rede Virtual na Nuvem).

O workflow faz várias coisas ao instalar a VCN:

  • Cria uma VCN.
  • Adiciona um Gateway de Internet que permite conexões com a Internet.
  • Cria e configura sub-redes públicas e privadas para a VCN.
  • Configura tabelas de roteamento e listas de segurança para as sub-redes.

Para obter mais informações sobre VCNs, consulte: Gerenciamento de VCN e Sub-rede.

Verificar Etapas de Instalação

Para criar uma VCN, siga estas etapas:

Importante

As etapas fornecidas são para uma conta Free Tier. Se você estiver usando uma conta paga, as etapas poderão ser diferentes das mostradas aqui.
  1. Abra o menu de navegação , selecione Rede e selecione Redes virtuais na nuvem.
  2. Se necessário, selecione seu compartimento no controle Compartimento na navegação esquerda.
  3. Clique em Iniciar Assistente de VCN.
  4. Selecione Criar VCN com Conectividade de Internet.
  5. Clique em Iniciar Assistente de VCN.
  6. Configure a VCN. A caixa de diálogo de configuração contém as seções a seguir.

    Informações básicas

    Informe o Nome da VCN e selecione um Compartimento.

    • Nome: <name-for-the-vcn>

      Digite um nome para sua VCN. Evite digitar informações confidenciais.

    • Compartimento: <your-compartment-name>

      Selecione seu compartimento.

    Configurar VCN

    • Keep the default values for VCN IPv4 CIDR block and DNS resolution.

    Configurar sub-rede pública

    • Mantenha os valores padrão para tipo de endereço IP e bloco CIDRIPv4 CIDR IPv4.

    Configurar sub-rede privada

    • Mantenha os valores padrão para tipo de endereço IP e bloco CIDRIPv4 CIDR IPv4.
  7. Clique em Próximo.
  8. Revise suas seleções. Clique em Anterior para voltar e fazer alterações.
  9. Clique em Criar para criar a VCN.

    O sistema cria a VCN e todos os seus recursos. Pode levar alguns minutos.

    Quando a criação estiver concluída, clique em Exibir VCN para ver sua nova VCN.

3. Instalar uma Instância do Oracle Linux

Use o workflow Criar uma Instância de VM para criar uma nova instância de computação.

O workflow faz várias coisas ao instalar a instância:

  • Cria e instala uma instância de computação que executa o Oracle Linux.
  • Selecione sua VCN e sub-rede pública para conectar a instância do Oracle Linux à internet.
  • Cria um par de chaves ssh que você usa para se conectar à instância.
Verificar Etapas de Instalação

Para começar a instalar uma instância com o workflow Criar uma instância de VM, siga estas etapas:

Importante

As etapas fornecidas são para uma conta Free Tier. Se você estiver usando uma conta paga, as etapas poderão ser diferentes das mostradas aqui.
  1. Abra o menu de navegação e selecione Compute. Em Compute, selecione Instâncias.
  2. Clique em Criar Instância.

    A página Criar instância de computação é exibida.

  3. Escolha o Nome e o Compartimento.

    Opções Iniciais

    • Nome: <name-for-the-instance>

      Digite um nome para sua instância. Evite digitar informações confidenciais.

    • Criar no compartimento: <your-compartment-name>

      Selecione seu compartimento. Use o compartimento criado na etapa anterior.

  4. Verifique as configurações de Colocação.
    • Use os valores padrão. Um domínio de disponibilidade é designado para você.

    Os valores default são semelhantes aos seguintes:

    • Domínio de disponibilidade: AD-1
    • Tipo de capacidade: Capacidade sob demanda
    • Domínio de falha: Permitir que a Oracle escolha o melhor domínio de falha
    Observação

    Para Free Tier, use a opção Always Free Elegível para o domínio de disponibilidade.
  5. Verifique as definições de Segurança.
    • Execute as configurações padrão.

    Os valores default são semelhantes aos seguintes:

    • Instância blindada: Desativada
    • Cálculo confidencial: Desativado
  6. Revise as definições de Imagem e forma. Clique em Editar.
    Observação

    A seguir estão amostras de dados de uma máquina virtual Ampere A1. Os valores reais podem ser distintos.
    • Mantenha a imagem padrão do Oracle Linux 8.
    • Clique em Alterar Forma.
    • Selecione Máquina Virtual.
    • Para a série de formas, selecione Amperar.
    • Selecione VM.Standard.A1. Flex a forma "Always Free".
    • Selecione 1 OCPUs.
    • Clique em Selecionar Forma.

    Os valores selecionados são semelhantes aos seguintes:

    • Imagem: Oracle Linux 8
    • build da imagem: <current-build-date>
    • Forma: VM.Standard.A1. Flex
    • OCPU: 1
    • Memória (GB): 6
    • Largura de Banda da rede (Gbps): 1
    Observação

    Para Free Tier, use as opções de forma Always Free Elegíveis.
  7. Verifique as configurações de Rede. Selecione a VCN criada na etapa anterior. Os valores de rede são semelhantes aos seguintes:
    • Rede virtual na nuvem: <your-vcn>
    • Sub-rede: <pubic-subnet-for-your-vcn>
    • Opções de início: - - -
    • Registro do DNS: Sim
    • Usar grupos de segurança de rede para controlar o tráfego: Não
    • Designar um endereço IPv4 público: Sim
    • Endereço IPv4 privado: Atribuído automaticamente na criação
    • IPv6 address: Não disponível
  8. Verifique as definições de Adicionar chaves SSH. Utilize os valores padrão fornecidos pelo workflow.
    • Selecione a opção Gerar um par de chaves para mim.
    • Clique em Salvar Chave Privada e em Salvar Chave Pública para salvar as chaves SSH públicas e privadas desta instância de computação.

    Se você quiser usar suas próprias chaves SSH, selecione uma das opções para fornecer sua chave pública.

    Observação

    Coloque seus arquivos de chave privada e pública em um local seguro. Não será possível recuperar chaves novamente após a criação da instância de computação.
  9. Revise as definições de Volume de inicialização.

    Selecione a definição Usar criptografia em trânsito. Deixe as outras duas configurações em branco.

  10. Verifique as definições do serviço Block Volume. Use os valores padrão fornecidos pelo workflow, que não seleciona volumes em blocos. Você pode adicionar volumes em blocos mais tarde.
  11. Clique em Criar para criar a instância. O provisionamento do sistema poderá levar alguns minutos.

Você criou com sucesso uma instância do Oracle Linux para executar o Servidor Web Apache.

4. Ativar Acesso à Internet

O assistente de Criação de uma Instância de VM cria automaticamente uma VCN para sua instância. Você adiciona uma regra de entrada à sua sub-rede para permitir conexões com a internet na porta 3000.

Criar uma Regra de Entrada para a sua VCN

Siga estas etapas para selecionar a sub-rede pública da sua VCN e adicionar a regra de entrada.

  1. Abra o menu de navegação e clique em Rede e clique em Redes Virtuais na Nuvem.
  2. Selecione a VCN criada.
  3. Com sua nova VCN exibida, clique no link de sub-rede <your-subnet-name>.

    As informações da sub-rede pública são exibidas com as Listas de Segurança na parte inferior da página. Um link para a Lista de Segurança Padrão da sua VCN é exibido.

  4. Clique no link Lista de Segurança Padrão.

    As Regras de Entrada padrão da sua VCN são exibidas.

  5. Clique em Adicionar Regras de Entrada.

    Uma caixa de diálogo Adicionar Regras de Entrada é exibida.

  6. Preencha a regra de entrada com as informações a seguir.

    Preencha a regra de entrada da seguinte forma:

    • Sem monitoramento de estado: Marcado
    • Tipo de Origem: CIDR
    • CIDR de Origem: 0.0.0.0/0
    • Protocolo IP: TCP
    • Intervalo de portas de origem: (leave-blank)
    • Faixa de Portas de Destino: 3000
    • Descrição: Permitir conexões HTTP
  7. Clique em Adicionar Regras de Entrada.
    Agora são permitidas conexões HTTP. Sua VCN está configurada para o Node Express.
Você criou com sucesso uma regra de entrada que disponibiliza sua instância pela internet.

5. Criar um Aplicativo Node Express

Em seguida, configure uma estrutura Express na sua instância do Oracle Linux e depois crie e execute um aplicativo NodeJS.

Instalar e Configurar o Node Express

Siga estas etapas para configurar sua instância e criar seu aplicativo:

  1. Abra o menu de navegação e clique em Compute. Em Compute, clique em Instâncias.
  2. Clique no link para a instância criada na etapa anterior.

    Na página Detalhes da Instância, procure na seção Acesso à Instância. Copie o endereço IP público que o sistema criou para você. Você usa esse endereço IP para se conectar à sua instância.

  3. Abra uma janela Terminal ou Prompt de Comando.
  4. Passe para o diretório no qual você armazenou as chaves de criptografia ssh criadas para este tutorial.
  5. Conecte-se à sua instância com este comando SSH:
    ssh -i <your-private-key-file> opc@<x.x.x.x>

    Como você identificou sua chave pública quando criou a instância, esse comando o registrará em sua instância. Agora você pode executar comandos sudo para instalar e iniciar seu servidor.

  6. Ative a conexão HTTP na porta 3000.
    
    sudo firewall-cmd --permanent --add-port=3000/tcp
    sudo firewall-cmd --reload
  7. Instale a versão mais recente do NodeJS.
    sudo yum update
    sudo yum install -y nodejs
    node --version
  8. Crie um diretório para seu aplicativo.
    mkdir node-hello-app
  9. Passe para o diretório node-hello-app.
    cd node-hello-app
  10. Use npm para criar um arquivo package.json:
    npm init

    Insira informações como a seguir:

    • nome: node-hello-app
    • versão: 1.0.0
    • descrição: Aplicativo Node Express Hello
    • ponto de entrada: app.js (Não use o padrão.)
    • comando de teste: (leave-blank)
    • repositório do git: git://github.com/username/repository.git (ou substitua por um repositório git válido)
    • senhas: (leave-blank)
    • autor: Exemplo de Usuário <username@example.com>
    • licença: UPL-1.0

    Visualize o que você obtém em package.json.

    About to write to /home/opc/node-hello-app/package.json:
    
    {
      "name": "node-hello-app",
      "version": "1.0.0",
      "description": "Node Express Hello application",
      "main": "app.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "repository": {
        "type": "git",
        "url": "git://github.com/username/repository.git"
      },
      "author": "Example User <username@example.com>",
      "license": "UPL-1.0",
      "bugs": {
        "url": "https://github.com/username/repository/issues"
      },
      "homepage": "https://github.com/username/repository#readme"
    }
    

    Digite sim para aprovar suas respostas.

  11. Instale o Express e salve-o na lista de dependências de package.json.
    npm install express --save
  12. Verifique se express é adicionado como uma dependência em package.json.
    cat package.json
    "dependencies": {
        "express": "^4.17.1"
    }
  13. Crie um aplicativo "Hello, World!".

    Crie o arquivo:

    vi app.js

    No arquivo, insira o seguinte texto e salve o arquivo:

    const express = require('express')
    const app = express()
    
    app.get('/', function (req, res) {
      res.send('Hello World!')
    })
    
    app.listen(3000, function() {
      console.log('Hello World app listening on port 3000!');
    })
    
  14. Execute o programa NodeJS:
    node app.js
  15. Teste o aplicativo usando a linha de comando ou um browser:
    • Para testar com curl, em um novo terminal, conecte-se à sua instância do Ubuntu com suas chaves SSH e, em seguida, na linha de comando, digite: curl -X GET http://localhost:3000
    • Em um browser, conecte-se ao endereço IP público designado à sua instância: http://<x.x.x.x>:3000
    O aplicativo do Node retorna Hello World! na sua instância ou no seu browser.

Você criou com sucesso um aplicativo local NodeJS em uma estrutura Express, em uma instância do Oracle Cloud Infrastructure.

Referências:

Para obter mais informações sobre O Express, consulte:

O Que Vem a Seguir

Você instalou e implantou com sucesso um aplicativo Node Express no Oracle Cloud Infrastructure usando uma instância do Linux.

Para explorar mais informações sobre desenvolvimento com produtos Oracle: