Cuenta gratuita: Instalación de Node Express en una instancia de Oracle Linux

En este tutorial, utilizará una cuenta gratuita de Oracle Cloud Infrastructure para configurar una instancia informática de Oracle Linux. A continuación, instalará una aplicación de Node Express y accederá a su nueva aplicación desde Internet. Por último, este tutorial incluye todos los pasos necesarios para configurar una red virtual para su host y conectar el host a Internet.

Las tareas clave incluyen cómo:

  • Configurar un compartimento para el trabajo de desarrollo.
  • Instalar su instancia de Oracle Linux y conectarla a su red virtual en la nube (VCN).
    • Configure una red virtual en la nube de Oracle Cloud Infrastructure y los servicios de red relacionados necesarios para que su host se conecte a Internet.
    • Configure las claves de cifrado ssh para acceder a Oracle Linux Server.
  • Configurar reglas de entrada para la VCN.
  • Configurar NodeJS con un marco de Express en la instancia.

A continuación, se muestra un diagrama simplificado de la configuración de la instancia de Linux.

Diagrama de los componentes necesarios para ejecutar una aplicación de NodeJS con un marco Express en Oracle Cloud Infrastructure

Para obtener información adicional, consulte:

Antes de empezar

Para completar correctamente este tutorial, debe tener lo siguiente:

Requisitos

1. Configuración de un compartimento para desarrollo

Configure un compartimento para el desarrollo.

Creación de un compartimento

Cree un compartimento para los recursos que cree en este tutorial.

  1. Conéctese a la consola de Oracle Cloud Infrastructure.
  2. Abra el menú de navegación y haga clic en Identidad y seguridad. En Identidad, haga clic en Compartimentos.
  3. Haga clic en Crear compartimento.
  4. Rellene la siguiente información:
    • Nombre: <your-compartment-name>
    • Descripción: Compartment for <your-description>.
    • Compartimento principal: <your-tenancy>(root)
  5. Haga clic en Crear compartimento.

Referencia: Creación de un compartimento

2. Instalación de una red virtual en la nube

Utilice el flujo de trabajo Iniciar asistente de VCN para crear una nueva red virtual en la nube (VCN).

El flujo de trabajo realiza varias cosas al instalar la VCN:

  • Crea una VCN.
  • Agrega un gateway de Internet que permite las conexiones de Internet.
  • Crea y configura subredes públicas y privadas para la VCN.
  • Configura tablas de rutas y listas de seguridad para las subredes.

Para obtener más información sobre las redes virtuales en la nube, consulte Gestión de subredes y VCN.

Revisión de los pasos de instalación

Para crear una VCN, realice estos pasos:

Importante

Los pasos proporcionados son para una cuenta gratuita. Si utiliza una cuenta de pago, los pasos pueden diferir de los que se muestran aquí.
  1. Abra el menú de navegación , seleccione Red y, a continuación, seleccione Redes virtuales en la nube.
  2. Si es necesario, seleccione el compartimento en el control Compartment de la navegación izquierda.
  3. Haga clic en Iniciar asistente de VCN.
  4. Seleccione Crear una VCN con conexión a Internet.
  5. Haga clic en Iniciar asistente de VCN.
  6. Configure la VCN. El cuadro de diálogo de configuración contiene las siguientes secciones.

    Información Básica

    Introduzca el nombre de la VCN y seleccione un compartimento.

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

      Introduzca un nombre para la VCN. Evite introducir información confidencial.

    • Compartimento: <your-compartment-name>

      Seleccione el compartimento.

    Configurar VCN

    • Mantenga los valores por defecto para el bloque IPv4 CIDR de VCN y la resolución de DNS.

    Configurar subred pública

    • Mantenga los valores por defecto para el tipo de dirección IP y el bloque IPv4 CIDR.

    Configurar subred privada

    • Mantenga los valores por defecto para el tipo de dirección IP y el bloque IPv4 CIDR.
  7. Haga clic en Siguiente.
  8. Revise las selecciones. Haga clic en Anterior para volver atrás y realizar cambios.
  9. Haga clic en Crear para crear la VCN.

    El sistema crea la VCN y todos sus recursos. Puede tardar unos minutos.

    Una vez finalizada la creación, haga clic en View VCN para ver la nueva VCN.

3. Instalación de una instancia de Oracle Linux

Utilice el flujo de trabajo Crear una instancia de VM para crear una nueva instancia informática.

El flujo de trabajo realiza varias acciones al instalar la instancia:

  • Crea e instala una instancia informática que ejecuta Oracle Linux.
  • Seleccione la VCN y la subred pública para conectar la instancia de Oracle Linux a Internet.
  • Crea un par de claves ssh que usted utilizará para conectarse a la instancia.
Revisión de los pasos de instalación

Para empezar a instalar una instancia con el flujo de trabajo Crear una instancia de VM, siga estos pasos:

Importante

Los pasos proporcionados son para una cuenta gratuita. Si utiliza una cuenta de pago, los pasos pueden diferir de los que se muestran aquí.
  1. Abra el menú de navegación y seleccione Recursos informáticos. En Recursos informáticos, seleccione Instancias.
  2. Haga clic en Crear instancia.

    Se muestra la página Crear instancia informática.

  3. Seleccione el nombre y el compartimento.

    Opciones iniciales

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

      Introduzca un nombre para la instancia. Evite introducir información confidencial.

    • Crear en compartimento: <your-compartment-name>

      Seleccione el compartimento. Utilice el compartimento creado en el paso anterior.

  4. Revise la configuración de Ubicación.
    • Acepte los valores por defecto. Se le asignará un dominio de disponibilidad.

    Los valores por defecto son similares a los siguientes:

    • Dominio de disponibilidad: AD-1
    • Tipo de capacidad: Capacidad bajo demanda
    • Dominio de errores: Permitir a Oracle elegir el mejor dominio de errores
    Nota

    En Cuenta gratuita, utilice la opción Siempre gratis elegible para el dominio de disponibilidad.
  5. Revise la configuración de Seguridad.
    • Acepte los valores por defecto.

    Los valores por defecto son similares a los siguientes:

    • Instancia blindada: desactivada
    • Recursos informáticos confidenciales: desactivado
  6. Revise la configuración de Imagen y unidad. Haga clic en Editar.
    Nota

    A continuación se incluyen datos de muestra para una máquina virtual Ampere A1. Los valores reales pueden ser diferentes.
    • Mantenga la imagen por defecto de Oracle Linux 8.
    • Haga clic en Cambiar unidad.
    • Seleccione Máquina Virtual.
    • Para la serie de unidades, seleccione Ampere.
    • Seleccione VM.Standard.A1. Flexibilice la unidad "Siempre gratis".
    • Seleccione 1 OCPU.
    • Haga clic en Seleccionar unidad.

    Los valores seleccionados son similares a los siguientes:

    • Imagen: Oracle Linux 8
    • Compilación de imagen: <current-build-date>
    • Unidad: VM.Standard.A1. Flexible
    • OCPU: 1
    • Memoria (GB): 6
    • Ancho de banda de red (Gbps): 1
    Nota

    En Cuenta gratuita, use las opciones de unidad Siempre gratis elegible.
  7. Revise la configuración de Red. Seleccione la VCN que ha creado en el paso anterior. Los valores de red son similares a los siguientes:
    • Red virtual en la nube: <su-vcn>
    • Subnet: <pubic-subnet-for-your-vcn>
    • Opciones de inicio: -
    • Registro de DNS:
    • Utilizar grupos de seguridad de red para controlar el tráfico: no
    • Asignar una dirección IPv4 pública:
    • Dirección IPv4 privada: asignada automáticamente al crear
    • Dirección IPv6: no disponible
  8. Revise la configuración de Agregar claves SSH. Acepte los valores por defecto proporcionados por el flujo de trabajo.
    • Seleccione la opción Generar un par de claves para mí.
    • Haga clic en Guardar clave privada y Guardar clave pública para guardar las claves SSH privadas y públicas para esta instancia informática.

    Si desea utilizar sus propias claves SSH, seleccione una de las opciones para proporcionar su clave pública.

    Nota

    Guarde sus archivos de claves privadas y públicas en una ubicación segura. No podrá volver a recuperar las claves una vez creada la instancia informática.
  9. Revise la configuración de Volumen de inicio.

    Seleccione el valor Usar cifrado en tránsito. Deje los otros dos valores en blanco.

  10. Revise la configuración de Volumen en bloque. Utilice los valores por defecto proporcionados por el flujo de trabajo, que no selecciona ningún volumen en bloque. Puede agregar volúmenes en bloque más tarde.
  11. Haga clic en Crear para crear la instancia. El aprovisionamiento del sistema puede tardar varios minutos.

Ha creado correctamente una instancia de Oracle Linux para ejecutar un servidor web Apache.

4. Activación del acceso a Internet

El asistente de Crear una instancia de VM crea automáticamente una VCN para su instancia. Usted agrega una regla de entrada a su subred para permitir conexiones a Internet en el puerto 3000.

Creación de una regla de entrada para la VCN

Siga estos pasos para seleccionar la subred pública de la VCN y agregar la regla de entrada.

  1. Abra el menú de navegación y haga clic en Red y, a continuación, haga clic en Redes virtuales en la nube.
  2. Seleccione la VCN que ha creado.
  3. Con la nueva VCN mostrada, haga clic en el enlace de la subred <nombre-de-su-subred>.

    La información de subred pública se muestra con las listas de seguridad en la parte inferior de la página. Se muestra un enlace a la lista de seguridad por defecto de la VCN.

  4. Haga clic en el enlace Lista de seguridad por defecto.

    Se muestran las reglas de entrada por defecto para su VCN.

  5. Haga clic en Agregar reglas de entrada.

    Se muestra un cuadro de diálogo Agregar reglas de entrada.

  6. Rellene la regla de entrada con la siguiente información.

    Rellene la regla de entrada de la siguiente forma:

    • Sin estado: marcada
    • Tipo de origen: CIDR
    • CIDR de origen: 0.0.0.0/0
    • Protocolo IP: TCP
    • Rango de puertos de origen: (déjelo en blanco)
    • Rango de puertos de destino: 3000
    • Descripción: Permitir conexiones HTTP
  7. Haga clic en Agregar reglas de entrada.
    Ahora se permiten las conexiones HTTP. Su VCN está configurada para Node Express.
Ha creado correctamente una regla de entrada que hace que su instancia esté disponible desde Internet.

5. Creación de una aplicación de Node Express

Tras esto, configurará un marco de Express en su instancia de Oracle Linux y, a continuación, creará y ejecutará una aplicación de NodeJS.

Instalación y configuración de Node Express

Siga estos pasos para configurar la instancia y crear la aplicación:

  1. Abra el menú de navegación y haga clic en Recursos informáticos. En Recursos informáticos, haga clic en Instancias.
  2. Haga clic en el enlace a la instancia que ha creado en el paso anterior.

    En la página Detalles de instancia, consulte la sección Acceso a instancias. Copie la dirección IP pública que ha creado el sistema. Utilizará esta dirección IP para conectarse a su instancia.

  3. Abra una ventana Terminal o Símbolo del sistema.
  4. Cambie al directorio donde haya almacenado las claves de cifrado ssh que ha creado para este tutorial.
  5. Conéctese a la instancia con este comando SSH:
    ssh -i <your-private-key-file> opc@<x.x.x.x>

    Dado que ha identificado su clave pública al crear la instancia, este comando le conecta a la instancia. Ahora puede ejecutar los comandos sudo para instalar e iniciar el servidor.

  6. Active la conexión HTTP en el puerto 3000.
    
    sudo firewall-cmd --permanent --add-port=3000/tcp
    sudo firewall-cmd --reload
  7. Instale la última versión de NodeJS.
    sudo yum update
    sudo yum install -y nodejs
    node --version
  8. Cree un directorio para la aplicación.
    mkdir node-hello-app
  9. Cambie al directorio node-hello-app.
    cd node-hello-app
  10. Utilice npm para crear un archivo package.json:
    npm init

    Introduzca la siguiente información:

    • nombre: node-hello-app
    • versión: 1.0.0
    • descripción: aplicación Hello de Node Express
    • punto de entrada: app.js (No utilice el valor por defecto).
    • comando test: (en blanco)
    • repositorio de git: git://github.com/username/repository.git (o sustituya por un repositorio de git válido)
    • palabras clave: (deje en blanco)
    • autor: usuario de ejemplo <usuario@ejemplo.com>
    • licencia: UPL-1.0

    Obtenga una vista previa de lo que obtiene en 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"
    }
    

    Introduzca yes para aprobar sus respuestas.

  11. Instale Express y guárdelo en la lista de dependencias de package.json.
    npm install express --save
  12. Verifique que Express se agregue como una dependencia en package.json.
    cat package.json
    "dependencies": {
        "express": "^4.17.1"
    }
  13. Cree una aplicación "Hello, World!".

    Cree el archivo:

    vi app.js

    En el archivo, introduzca el siguiente texto y guarde el archivo:

    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. Ejecute el programa NodeJS:
    node app.js
  15. Pruebe la aplicación mediante la línea de comandos o un explorador:
    • Para probar con curl, desde un nuevo terminal, conéctese a la instancia de Ubuntu con sus claves SSH y, a continuación, en la línea de comandos, introduzca: curl -X GET http://localhost:3000
    • Desde un explorador, conéctese a la dirección IP pública asignada a la instancia: http://<x.x.x.x>:3000
    La aplicación Node devuelve Hello World! en la instancia o en el explorador.

Ha creado correctamente una aplicación NodeJS local en un marco de Express en una instancia de Oracle Cloud Infrastructure.

Referencias:

Para obtener más información sobre Express, consulte: