Creazione di un lavoro dalle immagini in IBM Cloud Container Registry
Crea la configurazione del tuo lavoro che utilizza un'immagine disponibile all'indirizzo IBM Cloud® Container Registry. È possibile creare un processo dalla console o tramite la CLI.
Prima di iniziare
-
Devi avere un'immagine in Container Registry. Per ulteriori informazioni, vedi Introduzione a Container Registry. In alternativa, puoi creare un'immagine da origine repository o da origine locale.
-
Verifica di poter accedere al Registro di sistema. Consultare Impostazione delle autorizzazioni per i registri dei contenitori.
Ti interessa configurare il tuo progetto in modo che tutti gli utenti possano archiviare e accedere alle immagini su Container Registry senza dover creare manualmente i segreti di registro? Con autorizzazioni sufficienti, è possibile configurare questo accesso al registro predefinito in base all'ubicazione (regione). Se non si dispone di autorizzazioni sufficienti per eseguire queste azioni, è possibile utilizzare questa pagina per comprendere le autorizzazioni richieste. Consultare Configurazione delle impostazioni a livello di progetto.
Creazione di un lavoro che fa riferimento a una immagine in Container Registry con la console
Creare una configurazione di processo che utilizzi un'immagine presente in Container Registry tramite la console Code Engine.
Code Engine può eseguire automaticamente il pull delle immagini da uno spazio dei nomi Container Registry nell'account. Per eseguire il pull delle immagini da un account Container Registry diverso o da un account Docker Hub privato, consulta Crea un lavoro dalle immagini in un registro privato.
- Apri la console Code Engine.
- Seleziona " Inizia a creare ".
- Seleziona un progetto dall'elenco dei progetti disponibili. È anche possibile crearne uno nuovo. Per creare un job, è necessario disporre di un progetto selezionato.
- Selezionare Lavoro.
- Inserisci un nome per il processo; ad esempio, “
myjob”. - Selezionare " Usa un'immagine container esistente " e fare clic su " Configura immagine ".
- Selezionare un'ubicazione del registro del contenitore, come
IBM Registry Dallas. - Selezionare
Code Engine managed secretper Segreto registro. Poiché questo esempio utilizza un'immagine in un namespace Container Registry nel tuo account, Code Engine può creare e gestire automaticamente il segreto del registro per te. - Seleziona uno spazio dei nomi esistente e il nome dell'immagine nel registro per il lavoro Code Engine a cui fare riferimento. Ad esempio, seleziona
mynamespacee seleziona l'immaginehello_repoin quel namespace. - Selezionare un valore per Tag; ad esempio,
latest. - Fai clic su Done.
- Modificare i valori predefiniti per le variabili di ambiente o le impostazioni di runtime. Per ulteriori informazioni su queste opzioni, consultare Opzioni per creare ed eseguire un lavoro.
- Dalla pagina Crea lavoro, fare clic su Crea.
- Una volta creato l'annuncio, si aprirà la pagina dedicata a quel preciso annuncio. Dalla pagina del lavoro, fare clic su Inoltra lavoro per inoltrare un lavoro in base alla configurazione corrente.
Una volta creato il lavoro e eseguito il lavoro, è possibile visualizzare i dettagli sulla configurazione del lavoro e sulle esecuzioni del lavoro dalla pagina del lavoro.
Se si desidera aggiungere l'accesso al registro prima di creare un lavoro, consultare Accesso ai registri del contenitore.
Creazione di un lavoro con una immagine in Container Registry con la CLI
Creare una configurazione di processo che utilizzi un'immagine presente su IBM Cloud® Container Registry tramite la CLI, utilizzando il job create comando. Per un elenco completo delle opzioni, consultare il comando
ibmcloud ce job create.
Prima di iniziare
- Imposta il tuo ambiente CLICode Engine.
- Creare e utilizzare un progetto.
- Prima di poter utilizzare un lavoro Code Engine che fa riferimento a un'immagine in Container Registry, devi prima aggiungere l'accesso al registro in modo che Code Engine possa eseguire il pull dell'immagine quando viene eseguito il lavoro. Per informazioni sulle autorizzazioni richieste per accedere ai registri delle immagini, consultare Impostazione delle autorizzazioni per i registri delle immagini.
-
Per aggiungere l'accesso a Container Registry, creare una chiave API IAM. Per creare una IBM Cloud Dalla CLI, eseguire il comando '
iam api-key-create. Ad esempio, per creare una chiave API chiamata 'cliapikeycon una descrizione di 'My CLI API keye salvarla in un file chiamato 'key_file, eseguire il seguente comando:ibmcloud iam api-key-create cliapikey -d "My CLI API key" --file key_fileSe si sceglie di non salvare la chiave in un file, è necessario registrare la chiave API visualizzata quando la si crea. Non puoi richiamarla successivamente.
-
Dopo aver creato la tua chiave API, aggiungi l'accesso al registro a Code Engine. Per aggiungere l'accesso a Container Registry con la CLI, utilizza il comando
ibmcloud ce secret create --format registryper creare una parola segreta del registro. Ad esempio, il seguente comando crea l'accesso del Registro di sistema a un'istanza Container Registry denominatamyregistry. Tenere presente che anche se le opzioni--servere--usernamesono specificate nel comando di esempio, il valore predefinito per l'opzione--serverèus.icr.ioe l'opzione--usernameèiamapikeyquando il server èus.icr.io.ibmcloud ce secret create --format registry --name myregistry --server us.icr.io --username iamapikey --password APIKEYOutput di esempio
Creating registry secret 'myregistry'... OK -
Crea la configurazione del tuo lavoro e fai riferimento all'immagine
hello_repoin Container Registry. Ad esempio, il seguente comandojob createcrea il lavoromyhellojobper fare riferimento aus.icr.io/mynamespace/hello_repoutilizzando le informazioni di accessomyregistry.ibmcloud ce job create --name myhellojob --image us.icr.io/mynamespace/hello_repo --registry-secret myregistryIl formato del nome dell'immagine per questo lavoro è
REGISTRY/NAMESPACE/REPOSITORY:TAGdoveREGISTRYeTAGsono facoltativi. Se non viene specificatoREGISTRY, il valore predefinito èdocker.io. Se non viene specificatoTAG, il valore predefinito èlatest.
Passi successivi
-
Dopo aver creato il lavoro, inoltrare il lavoro per eseguirlo. Vedere Esecuzione di un lavoro. È possibile eseguire il lavoro più volte.
-
Dopo aver eseguito il lavoro, per visualizzare i dettagli del lavoro e delle esecuzioni del lavoro, consultare dettagli del lavoro di accesso.
-
Ora che il tuo lavoro è stato creato, considera di rendere i tuoi lavori guidati da eventi. Utilizzando le sottoscrizioni agli eventi, puoi attivare i tuoi lavori mediante pianificazioni periodiche o impostare il lavoro in modo che reagisca agli eventi come i caricamenti di file.
-
È possibile aggiornare il lavoro e il relativo codice di riferimento in qualsiasi dei seguenti modi, indipendentemente dal modo in cui è stato creato o precedentemente aggiornato il lavoro.
-
Se hai un'immagine del contenitore, in base allo standard OCI(Open Container Initiative), devi fornire solo un riferimento all'immagine, che punta all'ubicazione del tuo registro del contenitore quando crei (o aggiorni) il tuo lavoro. Puoi creare (o aggiornare) il tuo lavoro dalle immagini in un registro pubblico o in un Registro privato e quindi accedere all'immagine di riferimento dalla tua esecuzione del lavoro.
Se hai creato il tuo lavoro utilizzando il comando
job createe hai specificato l'opzione--build-sourceper creare l'immagine del contenitore dall'origine del repository o locale e vuoi modificare il tuo lavoro in modo che punti a un'altra immagine del contenitore, devi prima rimuovere l'associazione della build dal tuo lavoro. Ad esempio, eseguireibmcloud ce job update -n JOB_NAME --build-clear. Dopo aver rimosso l'associazione della build dal tuo lavoro, puoi aggiornare il lavoro per fare riferimento a un'immagine diversa. -
Se stai iniziando con il codice sorgente che risiede in un repository Git, puoi scegliere di consentire a Code Engine di creare l'immagine dalla tua origine e creare (o aggiornare) il lavoro con una singola operazione. In questo scenario, Code Engine carica la tua immagine in IBM Cloud® Container Registry. Per ulteriori informazioni, consultare Creazione di un lavoro dal codice sorgente del repository. Se vuoi avere un maggiore controllo sulla build della tua immagine, puoi scegliere di creare l'immagine con Code Engine prima di creare (o aggiornare) il tuo lavoro ed eseguirlo.
-
Se stai iniziando con il codice di origine che risiede su una workstation locale, puoi scegliere di consentire a Code Engine di creare l'immagine dalla tua origine e creare il lavoro con un singolo comando CLI. In questo scenario, Code Engine carica la tua immagine in IBM Cloud® Container Registry. Per ulteriori informazioni, vedi Creazione del tuo lavoro dal codice sorgente locale con la CLI. Se vuoi avere un maggiore controllo sulla build della tua immagine, puoi scegliere di creare l'immagine con Code Engine prima di creare (o aggiornare) il tuo lavoro ed eseguirlo.
Ad esempio, potresti scegliere di lasciare che Code Engine gestisca la creazione della tua origine locale mentre evolvi lo sviluppo della tua origine per il lavoro. Quindi, una volta maturata l'immagine, puoi aggiornare il job per fare riferimento all'immagine specifica che desideri. È possibile ripetere questo processo in base alle necessità.
Quando esegui il tuo job aggiornato, per l'esecuzione del job viene utilizzata l'ultima versione della tua immagine del contenitore di riferimento, a meno che non venga specificata una tag per l'immagine. Se viene specificato un tag per l'immagine, l'immagine con tag viene utilizzata per l'esecuzione del lavoro.
-
Cerchi altri esempi di codice? Dai un'occhiata agli esempi disponibili nel repository " IBM Cloud Code Engine " su GitHub.