Funzioni QuickStart su Cloud Shell

Scopri come eseguire rapidamente l'impostazione e l'esecuzione su Cloud Shell utilizzando questa funzione OCI QuickStart.

A. Impostare la tenancy

1. Creare gruppi e utenti

Se non esistono già utenti e gruppi idonei:

  1. Collegarsi alla console come amministratore della tenancy.
  2. Aprire il menu di navigazione e selezionare Identità e sicurezza. In Identità, selezionare Domini.
  3. Creare un nuovo gruppo selezionando Gruppi, quindi Crea gruppo.
    Questa immagine mostra la finestra di dialogo Crea gruppo, con campi Nome e Descrizione vuoti.
  4. Creare un nuovo utente selezionando Utenti, quindi Crea utente.
    Questa immagine mostra la finestra di dialogo Crea utente, con i campi Nome, Descrizione, E-mail e Conferma e-mail vuoti.
  5. Aggiungere un utente a un gruppo selezionando Gruppi, il nome del gruppo e quindi Aggiungi utente al gruppo.
    Questa immagine mostra la finestra di dialogo Aggiungi utente al gruppo, con un campo Utenti vuoto.

Per ulteriori informazioni, vedere Note di configurazione.

2. Crea compartimento

Se un compartimento adatto in cui creare risorse di rete e risorse OCI Functions non esiste già:

  1. Collegarsi alla console come amministratore della tenancy.
  2. Aprire il menu di navigazione e selezionare Identità e sicurezza. In Identità, selezionare Compartimenti.
  3. Selezionare Crea compartimento.
    Questa immagine mostra la finestra di dialogo Crea compartimento, con campi Nome e Descrizione vuoti.

Per ulteriori informazioni, vedere Note di configurazione.

3. Creare VCN e subnet

Se una VCN appropriata in cui creare le risorse di rete non esiste già:

  1. Collegarsi alla console come amministratore della tenancy.
  2. Aprire il menu di navigazione , selezionare Networking, quindi selezionare Reti cloud virtuali.
  3. Selezionare Avvia procedura guidata VCN per creare una nuova VCN.
  4. Nella finestra di dialogo Avvia procedura guidata VCN, selezionare VCN con connettività Internet e selezionare Avvia procedura guidata VCN.
    Questa immagine mostra la finestra di dialogo Avvia procedura guidata VCN, con l'opzione "Crea VCN con connettività Internet" selezionata.
  5. Immettere un nome per la nuova VCN, selezionare Avanti, quindi selezionare Crea per creare la VCN insieme alle risorse di rete correlate.

Per ulteriori informazioni, vedere Note di configurazione.

4. Crea criterio per il gruppo e il servizio

Se uno o più utenti di OCI Functions non sono un amministratore della tenancy:

  1. Collegarsi alla console come amministratore della tenancy.
  2. Aprire il menu di navigazione e selezionare Identità e sicurezza. In Identità, selezionare Criteri.
  3. Selezionare Crea criterio, specificare un nome e una descrizione per il nuovo criterio e selezionare il compartimento radice della tenancy.

  4. Utilizzare Policy Builder per creare il criterio. Selezionare Funzioni dalla lista dei casi d'uso dei criteri e basare il criterio sul modello di criteri Consenti agli utenti di creare, distribuire e gestire funzioni e applicazioni.

    Questa immagine mostra la finestra di dialogo Crea criterio, con i campi Nome, Descrizione e Compartimento vuoti. Il modello "Consenti agli utenti di creare, distribuire e gestire funzioni e applicazioni utilizzando Cloud Shell" è visualizzato nel campo Modelli di criteri comuni. Vengono visualizzate diverse istruzioni dei criteri.

    Il modello di criteri include le istruzioni dei criteri riportate di seguito.

    • 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'

    Se necessario, è possibile limitare queste istruzioni dei criteri in base al compartimento.

Per ulteriori informazioni, vedere Note di configurazione.

B. Crea applicazione

1. Creare la prima applicazione
  1. Accedere alla console come sviluppatore di funzioni.
  2. Aprire il menu di navigazione e selezionare Developer Services. In Funzioni, selezionare Applicazioni.
  3. Selezionare l'area in uso con OCI Functions.
  4. Selezionare Crea applicazione.
    Questa immagine mostra la finestra di dialogo Nuovo applicatore, con i campi Nome, VCN e Subnet vuoti.
  5. Specificare:
    • helloworld-app come nome per la nuova applicazione. La prima funzione verrà distribuita in questa applicazione e verrà specificata durante il richiamo della funzione.
    • La VCN e la subnet in cui eseguire la funzione. Tenere presente che una subnet pubblica richiede un gateway Internet nella VCN e una subnet privata richiede un gateway di servizi nella VCN.
  6. Selezionare Crea.

Per ulteriori informazioni, consulta istruzioni dettagliate.

C. Impostare l'ambiente di sviluppo Cloud Shell

1. Visualizzare la pagina Introduzione e la finestra Cloud Shell

Nella pagina Applicazioni della console:

  1. Selezionare l'applicazione helloworld-app appena creata per visualizzare la pagina dei dettagli dell'applicazione.
  2. Selezionare il collegamento Guida introduttiva, quindi selezionare Impostazione Cloud Shell.

    Questa immagine mostra la pagina Dettagli applicazione contenente i dettagli per l'applicazione helloworld. L'opzione Guida introduttiva - Impostazione Cloud Shell è selezionata.

    Suggerimento: nella pagina Guida introduttiva vengono ora visualizzati comandi personalizzati. È possibile copiare e incollare questi comandi per configurare l'ambiente Cloud Shell per lo sviluppo delle funzioni.

  3. Selezionare Avvia Cloud Shell per visualizzare la finestra del terminale Cloud Shell.
    Questa immagine mostra la pagina Dettagli applicazione contenente i dettagli per l'applicazione helloworld. L'opzione Guida introduttiva - Impostazione Cloud Shell è selezionata. Viene visualizzata una nuova finestra del terminale Cloud Shell.
2. Imposta contesto CLI progetto Fn

Copiare e incollare i comandi dalla pagina Guida introduttiva nella finestra del terminale Cloud Shell per configurare l'ambiente, come indicato di seguito.

  1. Trovare il nome del contesto Fn Project creato in precedenza per l'area corrente in cui è stata creata l'applicazione:

    fn list context

    Vengono restituiti almeno due contesti di progetto Fn, un contesto predefinito e un contesto per l'area corrente (ad esempio, denominato us-phoenix-1).

  2. Impostare il contesto del progetto Fn per utilizzare il contesto dell'area:

    fn use context <region-context>

    dove <region-context> è il contesto per l'area corrente. Ad esempio:

    fn use context us-phoenix-1
  3. Configurare il contesto del progetto Fn con l'OCID del compartimento corrente proprietario delle funzioni distribuite:

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

    Ad esempio:

    fn update context oracle.compartment-id ocid1.compartment.oc1..aaaaaaaarvdfa72n...
  4. Configurare il contesto di Fn Project con l'indirizzo Oracle Cloud Infrastructure Registry nell'area e nella tenancy correnti che si desidera utilizzare con OCI Functions:

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

    dove <repo-name-prefix> è il prefisso scelto per il repository di Oracle Cloud Infrastructure Registry in cui memorizzare le immagini per la funzione. Ad esempio:

    fn update context registry phx.ocir.io/ansh81vru1zp/acme-repo
  5. Configurare il contesto del progetto Fn con l'OCID del compartimento per i repository da e verso i quali si desidera che le funzioni OCI eseguano il push e il pull delle immagini delle funzioni, immettendo:

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

    Ad esempio:

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

    Se non si specifica un valore per oracle.image-compartment-id, OCI Functions esegue il push e il pull delle immagini nei repository e dai repository nel compartimento radice.

Per ulteriori informazioni, vedere Note di configurazione.

3. Genera token autorizzazione

Nella pagina Guida introduttiva della console:

  1. Selezionare Genera un token di autenticazione per visualizzare la pagina Token di autenticazione e selezionare Genera token.
    Questa immagine mostra la finestra di dialogo Genera token con un campo Descrizione vuoto.
  2. Immettere una descrizione significativa per il token di autenticazione nella finestra di dialogo Genera token e selezionare Genera token. Viene visualizzato il nuovo token di autenticazione (ad esempio, 6aN...6MqX).
  3. Copiare immediatamente il token di autenticazione in una posizione sicura da cui è possibile recuperarlo in seguito, poiché il token di autenticazione non verrà più visualizzato nella console.
  4. Chiudere la finestra di dialogo Genera token.

Per ulteriori informazioni, vedere Note di configurazione.

4. Accedi al registro

Nella pagina Guida introduttiva della console:

  1. Copiare il comando seguente:

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

    Ad esempio:

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

    Se la tenancy è federata con Oracle Identity Cloud Service, il formato sarà leggermente diverso. Ad esempio:

    docker login -u 'ansh81vru1zp/oracleidentitycloudservice/jdoe@acme.com' phx.ocir.io
  2. Nella finestra del terminale, incollare il comando appena copiato ed eseguirlo.
  3. Quando viene richiesta una password, immettere il token di autenticazione di Oracle Cloud Infrastructure creato e copiato in precedenza. Ad esempio, 6aN...6MqX

    Ora puoi iniziare a creare, distribuire e richiamare funzioni.

Per ulteriori informazioni, vedere Note di configurazione.

D. Creare, distribuire e richiamare la funzione

1. Crea la tua prima funzione

Nella finestra del terminale:

  1. Creare una funzione helloworld java immettendo:

    fn init --runtime java hello-java

    Viene creata una directory denominata hello-java contenente:

    • un file di definizione della funzione denominato func.yaml
    • una directory /src contenente i file e le directory di origine per la funzione helloworld
    • un file di configurazione Maven denominato pom.xml che specifica le dipendenze necessarie per compilare la funzione

    Java è solo uno dei diversi linguaggi supportati.

    Per ulteriori informazioni, consulta istruzioni dettagliate.

2. Distribuire la prima funzione

Nella finestra del terminale:

  1. Modificare la directory nella directory hello-java creata nel passo precedente:
    cd hello-java
  2. Immettere il comando Fn Project seguente per creare la funzione e le relative dipendenze sotto forma di immagine Docker denominata hello-java, eseguire il push dell'immagine nel registro Docker specificato e distribuire la funzione nelle funzioni OCI nell'applicazione helloworld-app creata in precedenza:
    fn -v deploy --app helloworld-app
  3. (Facoltativo) Verificare che la funzione sia stata distribuita in OCI Functions selezionando Funzioni (in Risorse nella pagina dei dettagli per l'applicazione helloworld-app) e notare che ora viene visualizzata la funzione hello-java.

Per ulteriori informazioni, consulta istruzioni dettagliate.

3. Richiamare la prima funzione

Nella finestra del terminale:

  1. Richiamare la funzione hello-java immettendo:

    fn invoke helloworld-app hello-java

    Viene visualizzato il messaggio "Hello world!".

  2. Richiamare la funzione hello-java con il parametro 'John' immettendo:

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

    Viene visualizzato il messaggio 'Hello John!'.

Complimenti. La prima funzione è stata appena creata, distribuita e richiamata utilizzando OCI Functions.

Per ulteriori informazioni, consulta istruzioni dettagliate.

4. Passi successivi

Dopo aver creato, distribuito e richiamato una funzione, è possibile eseguire le operazioni riportate di seguito.

Procedura completata.