Inicio rápido de Functions en Cloud Shell

Descubra cómo configurar y ejecutar rápidamente en Cloud Shell mediante este servicio OCI Functions QuickStart.

A. Configuración del arrendamiento

1. Crear grupos y usuarios

Si aún no existen usuarios y grupos adecuados:

  1. Conéctese a la consola como administrador de arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Dominios.
  3. Cree un nuevo grupo seleccionando Grupos y, a continuación, Crear grupo.
    En esta imagen se muestra el cuadro de diálogo Crear grupo, con los campos Nombre y Descripción vacíos.
  4. Cree un nuevo usuario seleccionando Usuarios y, a continuación, Crear usuario.
    En esta imagen se muestra el cuadro de diálogo Crear usuario, con los campos Nombre, Descripción, Correo electrónico y Confirmar correo electrónico vacíos.
  5. Para agregar un usuario a un grupo, seleccione Grupos, el nombre del grupo y, a continuación, Agregar usuario a grupo.
    En esta imagen se muestra el cuadro de diálogo Agregar usuario a grupo, con un campo Usuarios vacío.

Consulte Notas de configuración para obtener más información.

2. Crear compartimento

Si aún no existe un compartimento adecuado en el que crear recursos de red y recursos de OCI Functions:

  1. Conéctese a la consola como administrador de arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Compartimentos.
  3. Seleccione Create Compartment.
    En esta imagen se muestra el cuadro de diálogo Crear compartimento, con los campos Nombre y Descripción vacíos.

Consulte Notas de configuración para obtener más información.

3. Crear VCN y subredes

Si aún no existe una VCN adecuada en la que crear recursos de red:

  1. Conéctese a la consola como administrador de arrendamiento.
  2. Abra el menú de navegación , seleccione Red y, a continuación, seleccione Redes virtuales en la nube.
  3. Seleccione Iniciar asistente de VCN para crear una nueva VCN.
  4. En el cuadro de diálogo Start VCN Wizard, seleccione VCN con conexión a Internet e Start VCN Wizard.
    En esta imagen se muestra el cuadro de diálogo Iniciar asistente de VCN, con la opción "Crear VCN con conexión a Internet" seleccionada.
  5. Introduzca un nombre para la nueva VCN, seleccione Siguiente y, a continuación, seleccione Crear para crear la VCN junto con los recursos de red relacionados.

Consulte Notas de configuración para obtener más información.

4. Crear política para grupo y servicio

Si uno o más usuarios de OCI Functions no son administradores de arrendamiento:

  1. Conéctese a la consola como administrador de arrendamiento.
  2. Abra el menú de navegación y seleccione Identidad y seguridad. En Identidad, seleccione Políticas.
  3. Seleccione Crear política, especifique un nombre y una descripción para la nueva política y seleccione el compartimento raíz del arrendamiento.

  4. Utilice el creador de políticas para crear la política. Seleccione Funciones en la lista de casos de uso de políticas y base la política en la plantilla de política Permitir a los usuarios crear, desplegar y gestionar funciones y aplicaciones.

    En esta imagen se muestra el cuadro de diálogo Crear política, con los campos Nombre, Descripción y Compartimento vacíos. La plantilla "Let users create, deploy, and manage functions and applications using Cloud Shell" se muestra en el campo Common policy templates. Se muestran varias de las sentencias de política.

    La plantilla de política incluye las siguientes sentencias de política:

    • Allow group <group-name> to use cloud-shell in tenancy
    • Allow group <group-name> to manage repos in tenancy
    • Allow group <group-name> to read objectstorage-namespaces in tenancy
    • Allow group <group-name> to manage logging-family in tenancy
    • Allow group <group-name> to read metrics in tenancy
    • Allow group <group-name> to manage functions-family in tenancy
    • Allow group <group-name> to use virtual-network-family in tenancy
    • Allow group <group-name> to use apm-domains in tenancy
    • Allow group <group-name> to read vaults in tenancy
    • Allow group <group-name> to use keys in tenancy
    • Allow service faas to use apm-domains in tenancy
    • Allow service faas to read repos in tenancy where request.operation='ListContainerImageSignatures'
    • Allow service faas to {KEY_READ} in tenancy where request.operation='GetKeyVersion'
    • Allow service faas to {KEY_VERIFY} in tenancy where request.operation='Verify'

    Si es necesario, puede restringir estas sentencias de política por compartimento.

Consulte Notas de configuración para obtener más información.

B. Crear aplicación

1. Cree su primera aplicación
  1. Inicie sesión en la consola como desarrollador de funciones.
  2. Abra el menú de navegación y seleccione Servicios para desarrolladores. En Functions, seleccione Applications.
  3. Seleccione la región que está utilizando con OCI Functions.
  4. Seleccione Crear aplicación.
    En esta imagen se muestra el cuadro de diálogo Nueva aplicación, con los campos Nombre, VCN y Subredes vacíos.
  5. Especifique:
    • el nombre de la nueva aplicación. Desplegará su primera función en esta aplicación y especificará esta aplicación al llamar a la función.
    • La VCN y la subred en la que ejecutar la función. Tenga en cuenta que una subred pública necesita un gateway de Internet en la VCN, y una subred privada necesita un gateway de servicio en la VCN.
  6. Haga clic en Crear.

Consulte instrucciones detalladas para obtener más información.

C. Configure el entorno de desarrollo de Cloud Shell

1. Mostrar la página de introducción y la ventana de Cloud Shell

En la página Applications de la consola:

  1. Seleccione la aplicación helloworld-app que acaba de crear para mostrar la página de detalles de la aplicación.
  2. Seleccione el enlace Introducción y, a continuación, seleccione Configuración de Cloud Shell.

    En esta imagen se muestra la página Detalles de aplicación que contiene los detalles de la aplicación helloworld. La opción Getting Started - Cloud Shell Setup está seleccionada.

    Consejo: la página Introducción muestra ahora comandos personalizados específicamente para usted. Copie y pegue estos comandos para configurar el entorno de Cloud Shell para el desarrollo de funciones.

  3. Seleccione Iniciar Cloud Shell para mostrar la ventana de terminal de Cloud Shell.
    En esta imagen se muestra la página Detalles de aplicación que contiene los detalles de la aplicación helloworld. La opción Getting Started - Cloud Shell Setup está seleccionada. Se muestra una nueva ventana de terminal de Cloud Shell.
2. Configurar contexto de CLI de Fn Project

Copie y pegue comandos de la página Introducción en la ventana de terminal de Cloud Shell para configurar el entorno, de la siguiente manera:

  1. Busque el nombre del contexto de Fn Project creado previamente para la región actual en la que ha creado la aplicación:

    fn list context

    Se devuelven al menos dos contextos de Fn Project, un contexto por defecto y un contexto para la región actual (por ejemplo, denominado us-phoenix-1).

  2. Defina el contexto de Fn Project para utilizar el contexto de región:

    fn use context <region-context>

    donde <region-context> es el contexto de la región actual. Por ejemplo:

    fn use context us-phoenix-1
  3. Configure el contexto de Fn Project con el OCID del compartimento actual que poseerá las funciones desplegadas:

    fn update context oracle.compartment-id <compartment-ocid>

    Por ejemplo:

    fn update context oracle.compartment-id ocid1.compartment.oc1..aaaaaaaarvdfa72n...
  4. Configure el contexto de Fn Project con la dirección de Oracle Cloud Infrastructure Registry en la región y el arrendamiento actuales que desea utilizar con OCI Functions:

    fn update context registry <region-key>.ocir.io/<tenancy-namespace>/<repo-name-prefix>

    donde <repo-name-prefix> es un prefijo de su elección para el repositorio de Oracle Cloud Infrastructure Registry en el que almacenar imágenes para la función. Por ejemplo:

    fn update context registry phx.ocir.io/ansh81vru1zp/acme-repo
  5. Configure el contexto de Fn Project con el OCID del compartimento para los repositorios a los que desea que OCI Functions transfiera y extraiga imágenes de función introduciendo:

    fn update context oracle.image-compartment-id <compartment-ocid>

    Por ejemplo:

    fn update context oracle.image-compartment-id ocid1.compartment.oc1..aaaaaaaaquqe______z2q

    Si no especifica un valor para oracle.image-compartment-id, OCI Functions transfiere y extrae imágenes desde y hacia los repositorios del compartimento raíz.

Consulte Notas de configuración para obtener más información.

3. Generación de token de autenticación

En la página Introducción de la consola:

  1. Seleccione Generar un token de autenticación para mostrar la página Tokens de autenticación y seleccione Generar token.
    En esta imagen se muestra el cuadro de diálogo Generar token con un campo Descripción vacío.
  2. Introduzca una descripción significativa para el token de autenticación en el cuadro de diálogo Generar token y seleccione Generar token. Aparece el nuevo token de autenticación (por ejemplo, 6aN...6MqX).
  3. Copie el token de autenticación inmediatamente en una ubicación segura desde donde pueda recuperarlo más tarde, ya que no verá el token de autenticación de nuevo en la consola.
  4. Cierre el cuadro de diálogo Generar token.

Consulte Notas de configuración para obtener más información.

4. Iniciar sesión en el registro

En la página Introducción de la consola:

  1. Copie el siguiente comando:

    docker login -u '<tenancy-namespace>/<user-name>' <region-key>.ocir.io

    Por ejemplo:

    docker login -u 'ansh81vru1zp/jdoe@acme.com' phx.ocir.io

    Si su arrendamiento está federado con Oracle Identity Cloud Service, el formato será ligeramente diferente. Por ejemplo:

    docker login -u 'ansh81vru1zp/oracleidentitycloudservice/jdoe@acme.com' phx.ocir.io
  2. En la ventana de terminal, pegue el comando que acaba de copiar y ejecútelo.
  3. Cuando se le solicite una contraseña, introduzca el token de autenticación de Oracle Cloud Infrastructure que ha creado y copiado anteriormente. Por ejemplo, 6aN...6MqX

    Ya está listo para empezar a crear, desplegar y llamar a funciones.

Consulte Notas de configuración para obtener más información.

D. Cree, despliegue y llame a la función

1. Crea tu primera función

En la ventana de terminal:

  1. Cree una función java helloworld introduciendo:

    fn init --runtime java hello-java

    Se crea un directorio denominado hello-java que contiene:

    • un archivo de definición de función denominado func.yaml
    • un directorio /src que contiene archivos y directorios de origen para la función helloworld
    • un archivo de configuración de Maven denominado pom.xml que especifica las dependencias necesarias para compilar la función

    Java es solo uno de los varios lenguajes soportados.

    Consulte instrucciones detalladas para obtener más información.

2. Despliegue la primera función

En la ventana de terminal:

  1. Cambie el directorio al directorio hello-java creado en el paso anterior:
    cd hello-java
  2. Introduzca el siguiente comando de Fn Project único para crear la función y sus dependencias como una imagen de Docker denominada hello-java, envíe la imagen al registro de Docker especificado y despliegue la función en OCI Functions en la aplicación helloworld-app que ha creado anteriormente:
    fn -v deploy --app helloworld-app
  3. (Opcional) Confirme que la función se ha desplegado en OCI Functions seleccionando Functions (en Resources, en la página de detalles de la aplicación helloworld-app) y observando que ahora aparece la función hello-java.

Consulte instrucciones detalladas para obtener más información.

3. Llame a la primera función

En la ventana de terminal:

  1. Llame a la función hello-java introduciendo:

    fn invoke helloworld-app hello-java

    Se muestra el mensaje "Hola mundo".

  2. Llame a la función hello-java con el parámetro 'John' introduciendo:

    echo -n 'John' | fn invoke helloworld-app hello-java

    Aparece el mensaje "Hola John".

Enhorabuena. Acaba de crear, desplegar y llamar a su primera función mediante OCI Functions.

Consulte instrucciones detalladas para obtener más información.

4. Siguientes pasos

Ahora que ha creado, desplegado y llamado a una función, aprenda a:

¡Ya está!