Creazione di un'istanza contenitore
Creare un'istanza contenitore.
È possibile creare un massimo di 60 contenitori in ogni istanza del contenitore.
- Quando crei un'istanza di container, sono coinvolte diverse altre risorse, come un'immagine, una rete cloud e una subnet. Tali risorse possono trovarsi nello stesso compartimento dell'istanza o in altri compartimenti. Per creare l'istanza, devi disporre del livello di accesso richiesto a ciascuno dei compartimenti coinvolti. Vedere Criterio IAM necessario.
-
Quando si specifica un'immagine contenitore, il registro in cui risiede l'immagine deve essere raggiungibile dalla subnet fornita per l'istanza del contenitore. Se l'immagine del contenitore risiede in OCI Container Registry, specificare l'immagine in una subnet in una rete cloud virtuale (VCN) con un gateway di servizi. Se l'immagine del contenitore risiede in un registro esterno ospitato nella rete Internet pubblica, specificare l'immagine in una subnet pubblica in una rete VCN con un gateway Internet o in una subnet privata in una rete VCN con un gateway NAT (Network Address Translation).
Per creare un'istanza di contenitore, effettuare le operazioni riportate di seguito.
-
Aprire il menu di navigazione e fare clic su Servizi per sviluppatori. In Container e artifact, fare clic su Istanze container.
- Fare clic su Crea istanza contenitore.
- Immettere un nome per l'istanza del contenitore. In seguito sarà possibile aggiungerlo o modificarlo. Il nome non deve essere univoco perché un OCID (Oracle Cloud Identifier) identifica in modo univoco l'istanza del contenitore. Evitare di fornire informazioni riservate.
- Selezionare il compartimento in cui creare l'istanza. Le altre risorse scelte possono provenire da compartimenti diversi.
- In Posizionamento selezionare le seguenti opzioni:
- Selezionare il dominio di disponibilità in cui si desidera creare l'istanza.
-
(Facoltativo) Se si desidera specificare un dominio di errore, fare clic su Mostra opzioni avanzate. Quindi, per il dominio di errore, selezionare il dominio di errore da utilizzare per l'istanza. Se non si specifica il dominio di errore, il sistema ne seleziona uno automaticamente. È possibile modificare il dominio di errore dopo aver creato l'istanza. Per ulteriori informazioni, vedere Domini di errore.
In Forma, scegliere la forma flessibile per l'istanza del contenitore. Le forme flessibili hanno un numero personalizzabile di OCPU e una quantità di memoria.
- Per Numero di OCPU, selezionare il numero di OCPU che si desidera allocare per questa istanza trascinando il dispositivo di scorrimento. Le altre risorse si adattano proporzionalmente.
- Per Importo di memoria (GB), selezionare la quantità di memoria che si desidera allocare per questa istanza trascinando il dispositivo di scorrimento. La quantità di memoria consentita si basa sul numero di OCPU selezionate.
Nota
Per consentire il traffico di rete verso le applicazioni in esecuzione nel contenitore, sarà necessaria una regola di sicurezza come parte di una lista di sicurezza o di un gruppo di sicurezza di rete. Ad esempio, se l'applicazione viene eseguita sul protocollo TCP, porta 8080, è necessaria una regola di sicurezza per TCP e porta 8080. Per informazioni sulla configurazione delle regole di sicurezza, vedere Regole di sicurezza.- Per la rete primaria e la subnet, specificare la rete cloud virtuale (VCN) e la subnet in cui creare l'istanza. Decidere se utilizzare una VCN e una subnet esistenti, creare una nuova VCN o una nuova subnet oppure immettere l'OCID di una subnet esistente:
- Seleziona rete cloud virtuale esistente: selezionare questa opzione, quindi immettere le informazioni riportate di seguito.
- Rete cloud virtuale: la rete cloud in cui creare l'istanza.
- Subnet: subnet all'interno della rete cloud a cui è collegata l'istanza. Le subnet sono pubbliche o private. Privato significa che le istanze in quella subnet non possono avere indirizzi IP pubblici. Per ulteriori informazioni, vedere Accesso a Internet. Le subnet possono anche essere specifiche del dominio di disponibilità o regionali. Quelli regionali hanno "regionale" dopo il nome. Si consiglia di utilizzare le subnet regionali. Per ulteriori informazioni, vedere Informazioni sulle subnet regionali.
- Per utilizzare una subnet esistente, selezionare Seleziona subnet esistente, quindi selezionare la subnet.
- Per creare una subnet, selezionare Crea nuova subnet pubblica, quindi immettere le informazioni riportate di seguito.
- Nome nuova subnet: un nome per il subnedt. Evitare di fornire informazioni riservate.
- Crea nel compartimento: il compartimento in cui si desidera inserire la subnet.
- Blocco CIDR: un singolo blocco CIDR contiguo per la subnet (ad esempio, 172.16.0.0/24). Assicurati che si trovi all'interno del blocco CIDR della rete cloud e che non si sovrapponga ad altre subnet. Impossibile modificare questo valore in un secondo momento. Vedere Intervalli di dimensioni e indirizzi della VCN consentiti. Per riferimento, ecco un calcolatore CIDR.
- Crea nuova rete cloud virtuale: selezionare questa opzione, quindi immettere le informazioni riportate di seguito.
- Nome nuova rete cloud virtuale: un nome per la subnet. Un nome descrittivo per la rete. Evitare di fornire informazioni riservate.
- Crea nel compartimento: il compartimento in cui si desidera inserire la nuova rete.
- Crea nuova subnet pubblica: una subnet all'interno della rete cloud a cui collegare l'istanza. Le subnet sono pubbliche o private. Privato significa che le istanze in quella subnet non possono avere indirizzi IP pubblici. Per ulteriori informazioni, vedere Accesso a Internet. Le subnet possono anche essere specifiche del dominio di disponibilità o regionali. Quelli regionali hanno "regionale" dopo il nome. Si consiglia di utilizzare le subnet regionali. Per ulteriori informazioni, vedere Informazioni sulle subnet regionali.
- Nome nuova subnet: nome per la subnet. Non deve essere unico e può essere modificato in seguito. Evitare di fornire informazioni riservate.
- Crea nel compartimento: il compartimento in cui si desidera inserire la subnet.
- Blocco CIDR: un singolo blocco CIDR contiguo per la subnet, ad esempio 172.16.0.0/24. Assicurati che si trovi all'interno del blocco CIDR della rete cloud e che non si sovrapponga ad altre subnet. Impossibile modificare questo valore in un secondo momento. Vedere Intervalli di dimensioni e indirizzi VCN consentiti e questo calcolatore CIDR.
Immettere l'OCID della subnet: selezionare questa opzione, quindi immettere l'OCID della subnet.
- (Facoltativo) Se la subnet è pubblica, selezionare Assegna un indirizzo IPv4 pubblico per assegnare all'istanza un indirizzo IP pubblico. Un indirizzo IP pubblico rende l'istanza accessibile da Internet. Per ulteriori informazioni, vedere Accesso a Internet.
-
(Facoltativo) Per configurare le impostazioni di rete avanzate, fare clic su Mostra opzioni avanzate, quindi specificare le opzioni riportate di seguito in base alle esigenze.
- Utilizzare i gruppi di sicurezza di rete per controllare il traffico: selezionare questa opzione se si desidera aggiungere la VNIC primaria dell'istanza a uno o più gruppi di sicurezza di rete (NSG). Specificare quindi i gruppi NSG. Questa opzione è disponibile solo quando si utilizza una VCN esistente. Per ulteriori informazioni, vedere Gruppi di sicurezza di rete.
- Indirizzo IP privato: immetti un indirizzo IP privato disponibile a scelta dal CIDR della subnet. Se non si specifica un valore, l'indirizzo IP privato viene assegnato automaticamente.
- Record DNS: specificare se assegnare un record DNS privato.
- Nome host: immettere un nome host da utilizzare per il DNS all'interno della rete cloud. Questa opzione è disponibile solo se la VCN e la subnet dispongono entrambe di etichette DNS e si è selezionati per assegnare un record DNS privato.
- Seleziona rete cloud virtuale esistente: selezionare questa opzione, quindi immettere le informazioni riportate di seguito.
- (Facoltativo) Per configurare le impostazioni avanzate per l'istanza del contenitore, fare clic su Mostra opzioni avanzate, quindi specificare le opzioni riportate di seguito in base alle esigenze.
- Nella scheda Opzioni avanzate è possibile configurare le opzioni seguenti:
- Timeout di chiusura elevato (secondi): impostare il periodo di tempo in cui l'istanza del contenitore attende l'arresto del sistema operativo prima dello spegnimento.
-
Criterio di riavvio contenitore: selezionare tra Sempre, Mai e In caso di errore.
È possibile impostare il criterio di riavvio per i contenitori in un'istanza del contenitore quando vengono creati. Quando un singolo contenitore esce (interrompe, riavvia o non riesce), il codice di uscita e l'ora di uscita sono disponibili nell'API e viene applicato il criterio di riavvio. Se tutti i container vengono chiusi e non vengono riavviati, l'istanza del container viene arrestata.
Selezionare una delle opzioni seguenti.
- Sempre: i container vengono sempre riavviati, anche se vengono chiusi correttamente. "Sempre" è preferibile se si desidera assicurarsi che il contenitore sia sempre in esecuzione, ad esempio un server Web. Questa è l'impostazione predefinita.
- Mai: i container non vengono mai riavviati, indipendentemente dal motivo dell'uscita.
- In caso di errore: i contenitori vengono riavviati solo se vengono chiusi con un errore. "In caso di errore" è preferibile se si desidera eseguire un determinato task e assicurarsi che venga completato con successo.
- Nella scheda Tag aggiungere tag all'istanza del contenitore. Se si dispone delle autorizzazioni per creare una risorsa, si dispone anche delle autorizzazioni per applicare tag in formato libero a tale risorsa. Per applicare una tag definita, è necessario disporre delle autorizzazioni per utilizzare lo spazio di nomi tag. Per ulteriori informazioni sull'applicazione di tag, vedere Tag delle risorse. Se non si è certi di applicare le tag, saltare questa opzione o chiedere all'amministratore. È possibile applicare le tag in un secondo momento.
- Nella scheda Opzioni avanzate è possibile configurare le opzioni seguenti:
- Fare clic su Avanti per configurare i contenitori all'interno dell'istanza del contenitore.
- Immettere un nome per il primo contenitore. In seguito sarà possibile aggiungerlo o modificarlo. Il nome non deve essere univoco, perché un OCID (Oracle Cloud Identifier) identifica in modo univoco il contenitore. Evitare di fornire informazioni riservate.
-
In Immagine fare clic su Seleziona immagine, quindi attenersi alla procedura riportata di seguito nel pannello Immagine contenitore per selezionare un'immagine del contenitore.
-
Selezionare un'origine immagine:
-
OCI Container Registry: OCI Registry, noto anche come Container Registry, è un registro gestito da Oracle che consente di memorizzare, condividere e gestire le immagini dei container. Per ulteriori informazioni, vedere Container Registry.
-
Registro esterno: un registro esterno, ad esempio Docker Hub, in cui è possibile scegliere un'immagine fornita da fornitori di terze parti.
- Segreti di errore per l'autorizzazione pull immagine: è possibile ospitare le immagini del contenitore in registri privati o repository che richiedono l'autorizzazione per estrarre le immagini. Ti consigliamo di memorizzare le tue credenziali utilizzando il servizio Oracle Cloud Infrastructure Vault per una maggiore sicurezza e una gestione semplificata delle credenziali. Per ulteriori informazioni, vedere Segreti di errore per l'autorizzazione pull immagine.
-
-
Seleziona un'immagine.
-
Fare clic su Seleziona immagine.Nota
È necessario creare un criterio che selezioni l'immagine del contenitore. Vedere Selezione dell'immagine del contenitore mediante la console.
-
-
Nella sezione Variabili di ambiente è possibile impostare le variabili di ambiente utilizzate dal contenitore.
Le immagini contenitore supportano le variabili di ambiente per personalizzarne l'esecuzione. Ad esempio, l'immagine ufficiale NGINX supporta le variabili di ambiente NGINX_HOST e NGINX_PORT, pertanto è possibile impostare il valore per personalizzare l'esecuzione in base alle seguenti variabili:
- NGINX_HOST=foobar.com
- NGINX_PORT=80
- Per configurare le impostazioni avanzate per il contenitore, fare clic su Mostra opzioni avanzate, quindi specificare le opzioni riportate di seguito in base alle esigenze.
- Nella scheda Risorse è possibile configurare la quantità di risorse consumate dal contenitore in valori assoluti o percentuali. Per impostazione predefinita, il contenitore può utilizzare tutte le risorse nell'istanza del contenitore.
- Nella scheda Opzioni di avvio è possibile configurare la directory di lavoro e gli argomenti ENTRYPOINT per il contenitore.
- Nella scheda Sicurezza è possibile specificare le impostazioni di sicurezza del contenitore.
- Selezionare la casella di controllo Abilita file system radice di sola lettura per applicare l'accesso di sola lettura al file system radice del contenitore.
- Selezionare la casella di controllo Esegui come utente non root per assicurarsi che l'utente root non esegua il contenitore.
- Quando si abilita Esegui come utente non root, il valore ID utente non può essere impostato su 0.
- Utilizzare i campi ID utente e ID gruppo per impostare l'ID utente (ID) e l'ID gruppo (GID) per eseguire il processo del punto di accesso del contenitore.
- Il valore per ID utente e ID gruppo deve essere un numero intero compreso tra 0 e 65535. Il valore predefinito è zero.
- I valori ID utente e ID gruppo specificati per i valori di override impostati nell'immagine del contenitore. Quando il valore ID utente non viene specificato, il processo entrypoint del contenitore viene eseguito come utente root.
- È necessario impostare l'ID utente prima di impostare l'ID gruppo.
- Nella sezione Configura funzionalità Linux è possibile configurare le funzionalità Linux per il contenitore. Per impostazione predefinita, il contenitore viene avviato con diverse funzionalità che è possibile scegliere di eliminare.
Sia il campo Aggiungi funzionalità che il campo Elimina funzionalità supportano il valore ALL, che consente o elimina tutte le funzionalità. Il valore ALL si riferisce alle funzionalità Linux abilitate per impostazione predefinita.
- Se si lasciano vuoti sia le opzioni Aggiungi capacità che Elimina capacità, tutte le funzionalità predefinite sono disponibili per il contenitore.
- Se si immette ALL nel campo Aggiungi funzionalità, tutte le funzionalità sono disponibili ad eccezione di quelle elencate nel campo Elimina funzionalità e ignora ALL nel campo Elimina funzionalità.
- Se si immette TUTTI nel campo Funzioni di rilascio, il contenitore contiene solo le funzionalità elencate nel campo Aggiungi capacità.
- In altri casi, elimina tutte le funzionalità dal set predefinito elencato nel campo Funzioni di rilascio, quindi aggiunge le funzionalità elencate nel campo Aggiungi funzionalità e infine restituisce il risultato come capacità per il contenitore.
- La creazione dell'istanza del contenitore non riesce se si forniscono funzionalità non incluse nella lista riportata di seguito.
Tutte le funzionalità Linux abilitate per impostazione predefinita quando si crea un contenitore Capacità descrizione CAP_CHOWN Apporta modifiche agli UID e ai GID del file. CAP_DAC_OVERRIDE Controllo discrezionale dell'accesso (DAC) che ignora i controlli delle autorizzazioni di lettura, scrittura ed esecuzione dei file. CAP_FSETID - Non cancella i bit di modalità set-user-ID e set-group-ID quando un file viene modificato.
- Imposta il bit set-group-ID per un file il cui GID non corrisponde al file. system o a uno qualsiasi dei GID supplementari del processo chiamante.
CAP_FOWNER Ignora i controlli delle autorizzazioni per le operazioni che normalmente richiedono che l'UID del file system del processo corrisponda all'UID del file, esclude le operazioni coperte da CAP_DAC_OVERRIDE e CAP_DAC_READ_SEARCH. CAP_MKNOD Crea file speciali utilizzando mknod(2). CAP_NET_RAW - Utilizza prese RAW e PACKET.
- Associa a qualsiasi indirizzo per il proxy trasparente.
CAP_SETGID - Esegue manipolazioni dei GID di processo e dell'elenco GID supplementare.
- Forgia il GID durante il passaggio delle credenziali socket tramite socket di dominio UNIX.
- Scrive un mapping di ID gruppo in uno spazio di nomi utente.
CAP_SETUID - Crea manipolazioni di UID di processo.
- Forgia l'UID durante il passaggio delle credenziali socket tramite socket di dominio UNIX.
- Scrive un mapping di ID utente in uno spazio di nomi utente.
CAP_SETFCAP Imposta le capacità del file. CAP_SETPCAP Se le capacità del file non sono supportate, concede o rimuove qualsiasi capacità nella capacità consentita del chiamante impostata su o da qualsiasi altro processo. CAP_NET_BIND_SERVICE Associa un socket alle porte con privilegi di dominio Internet (numeri di porta inferiori a 1024). CAP_SYS_CHROOT Utilizza chroot(2) per passare a una directory radice diversa. CAP_KILL Ignora i controlli delle autorizzazioni per l'invio dei segnali, che includono l'uso dell'operazione ioctl(2) KDSIGACCEPT. CAP_AUDIT_WRITE Scrive i record nel log di controllo del kernel.
- Per configurare un altro contenitore nell'istanza, fare clic su + Altro contenitore e ripetere i passi precedenti.
- Fare clic su Avanti per esaminare l'istanza del contenitore e i relativi contenitori.
- Fare clic su Crea.
-
Utilizzare il comando di creazione contenitore-istanza contenitore-istanza OCI per creare un'istanza contenitore. Per utilizzare questo comando, sostituire compartment_ocid, logical_ad e subnetId con le risorse.$ compartment_ocid=ocid1.compartment.oc1.example $ logical_ad=Lnnj:US-EXAMPLE $ ci_shape=CI.Standard.E4.Flex $ shape_config_json='{"ocpus": 2,"memoryInGBs": 2}' $ containers_json='[{"imageUrl": "busybox", "command": ["bin/sh"], "arguments": ["-c", "echo Hello"]}]' $ vnics_json='[{"subnetId": "ocid1.subnet.oc1.example"}]' $ oci container-instances container-instance create --compartment-id "$compartment_ocid" --availability-domain "$logical_ad" --shape "$ci_shape" --shape-config "$shape_config_json" --containers "$containers_json" --vnics "$vnics_json"
Per un elenco completo dei flag e delle opzioni variabili per i comandi CLI, vedere Command Line Reference.
Utilizzare l'operazione CreateContainerInstance.