Création d'une instance de conteneur
Créez une instance de conteneur.
Vous pouvez créer un maximum de 60 conteneurs sur chaque instance de conteneur.
- Lorsque vous créez une instance de conteneur, plusieurs autres ressources sont impliquées, comme une image, un réseau cloud ou un sous-réseau. Ces ressources peuvent se trouver dans le même compartiment que l'instance ou dans d'autres compartiments. Vous devez disposer du niveau d'accès requis à chaque compartiment impliqué pour créer l'instance. Reportez-vous à Stratégie IAM requise.
-
Lorsque vous spécifiez une image de conteneur, le registre dans lequel vit l'image doit être accessible à partir du sous-réseau que vous fournissez pour l'instance de conteneur. Si l'image de conteneur réside dans OCI Container Registry, indiquez l'image dans un sous-réseau dans un réseau cloud virtuel (VCN) avec une passerelle de service. Si l'image de conteneur réside dans un registre externe hébergé sur le réseau Internet public, spécifiez l'image dans un sous-réseau public dans un VCN avec une passerelle Internet ou dans un sous-réseau privé dans un VCN avec une passerelle NAT (Network Address Translation).
Pour créer une instance de conteneur, procédez comme suit :
-
Ouvrez le menu de navigation et cliquez sur Services de développeur. Sous Conteneurs et artefacts, cliquez sur Instances de conteneur.
- Cliquez sur Créer une instance de conteneur.
- Entrez un nom pour l'instance de conteneur. Vous pouvez ajouter ou modifier le nom ultérieurement. Le nom n'a pas besoin être unique car un identificateur Oracle Cloud (OCID) identifie l'instance de conteneur de façon unique. Evitez de saisir des informations confidentielles.
- Sélectionnez le compartiment dans lequel créer l'instance. Les autres ressources que vous choisissez peuvent être issues de différents compartiments.
- Sous Placement, sélectionnez les options suivantes :
- Sélectionnez le domaine de disponibilité dans lequel créer l'instance.
-
(Facultatif) Pour indiquer un domaine de pannes, cliquez sur Afficher les options avancées. Ensuite, pour Domaine de pannes, sélectionnez le domaine de pannes à utiliser pour l'instance. Si vous ne spécifiez pas le domaine de pannes, le système en sélectionne un pour vous. Vous pouvez modifier le domaine de pannes après avoir créé l'instance. Pour plus d'informations, reportez-vous à Domaines de pannes.
Sous Forme, choisissez la forme flexible de l'instance de conteneur. Les formes flexibles ont un nombre d'OCPU et une quantité de mémoire personnalisables.
- Dans Nombre d'OCPU, sélectionnez le nombre d'OCPU à affecter à cette instance en faisant glisser le curseur. Les autres ressources sont redimensionnées proportionnellement.
- Dans Quantité de mémoire (Go), sélectionnez la quantité de mémoire à affecter à l'instance en faisant glisser le curseur. La quantité de mémoire autorisée est basée sur le nombre d'OCPU sélectionnées.
Remarque
Vous aurez besoin d'une règle de sécurité dans le cadre d'une liste de sécurité ou d'un groupe de sécurité réseau pour autoriser le trafic réseau vers les applications exécutées dans le conteneur. Par exemple, si votre application s'exécute sur le port TCP 8080, vous avez besoin d'une règle de sécurité pour TCP et le port 8080. Pour plus d'informations sur la configuration des règles de sécurité, reportez-vous à Règles de sécurité.- Pour Réseau principal et Sous-réseau, indiquez le réseau cloud virtuel (VCN) et le sous-réseau dans lesquels créer l'instance. Décidez si vous souhaitez utiliser un VCN et un sous-réseau existants, créer un VCN ou un sous-réseau, ou entrer l'OCID d'un sous-réseau existant :
- Sélection d'un réseau cloud virtuel existant : sélectionnez cette option, puis entrez les informations suivantes.
- Réseau cloud virtuel : réseau cloud virtuel dans lequel créer l'instance.
- Sous-réseau : sous-réseau du réseau cloud auquel l'instance est attachée. Les sous-réseaux sont publics ou privés. Les instances d'un sous-réseau privé ne peuvent pas disposer d'adresses IP publiques. Pour plus d'informations, reportez-vous à Accès à Internet. Les sous-réseaux peuvent également être propres au domaine de disponibilité ou régionaux. Les régions ont le nom "régional". Nous vous recommandons d'utiliser des sous-réseaux régionaux. Pour plus d'informations, reportez-vous à A propos des sous-réseaux régionaux.
- Pour utiliser un sous-réseau existant, sélectionnez Sélectionner un sous-réseau existant, puis sélectionnez-le.
- Pour créer un sous-réseau, sélectionnez Créer un sous-réseau public, puis entrez les informations suivantes :
- Nom du nouveau sous-réseau : nom du sous-réseau. Evitez de saisir des informations confidentielles.
- Créer dans le compartiment : compartiment dans lequel vous voulez mettre le sous-réseau.
- Bloc CIDR : bloc CIDR unique et contigu pour le sous-réseau (par exemple, 172.16.0.0/24). Assurez-vous qu'il se situe dans le bloc CIDR du réseau cloud et qu'il ne chevauche aucun autre sous-réseau. Vous ne pouvez pas modifier cette valeur ultérieurement. Reportez-vous à Plages de tailles et d'adresses VCN autorisées. Pour référence, voici un calculateur de CIDR.
- Créer un réseau cloud virtuel : sélectionnez cette option, puis entrez les informations suivantes.
- Nouveau nom du réseau cloud virtuel : nom du sous-réseau. Nom convivial du réseau. Evitez de saisir des informations confidentielles.
- Créer dans le compartiment : compartiment dans lequel placer le nouveau réseau.
- Créer un sous-réseau public : sous-réseau du réseau cloud auquel attacher l'instance. Les sous-réseaux sont publics ou privés. Les instances d'un sous-réseau privé ne peuvent pas disposer d'adresses IP publiques. Pour plus d'informations, reportez-vous à Accès à Internet. Les sous-réseaux peuvent également être propres au domaine de disponibilité ou régionaux. Les régions ont le nom "régional". Nous vous recommandons d'utiliser des sous-réseaux régionaux. Pour plus d'informations, reportez-vous à A propos des sous-réseaux régionaux.
- Nom du nouveau sous-réseau : nom du sous-réseau. Il n'a pas besoin d'être unique et vous pouvez le modifier plus tard. Evitez de saisir des informations confidentielles.
- Créer dans le compartiment : compartiment dans lequel vous voulez mettre le sous-réseau.
- Bloc CIDR : bloc CIDR unique et contigu pour le sous-réseau, par exemple, 172.16.0.0/24. Assurez-vous qu'il se situe dans le bloc CIDR du réseau cloud et qu'il ne chevauche aucun autre sous-réseau. Vous ne pouvez pas modifier cette valeur ultérieurement. Reportez-vous à Plages de tailles et d'adresses VCN autorisées et à ce calculateur CIDR.
Entrez l'OCID de sous-réseau : sélectionnez cette option, puis entrez l'OCID de sous-réseau.
- (Facultatif) Si le sous-réseau est public, sélectionnez Affecter une adresse IPv4 publique pour affecter une adresse IP publique à l'instance. Une adresse IP publique permet d'accéder à l'instance à partir d'Internet. Pour plus d'informations, reportez-vous à Accès à Internet.
-
(Facultatif) Pour configurer des paramètres de fonctions de réseau avancés, cliquez sur Afficher les options avancées, puis indiquez les options suivantes si nécessaire :
- Utiliser les groupes de sécurité réseau pour contrôler le trafic : sélectionnez cette option afin d'ajouter la VNIC principale de l'instance à des groupes de sécurité réseau. Spécifiez ensuite les groupes de sécurité réseau. Cette option est disponible uniquement lorsque vous utilisez un VCN existant. Pour plus d'informations, reportez-vous à Groupes de sécurité réseau.
- adresse IP privée : entrez l'adresse IP privée disponible de votre choix provenant du CIDR du sous-réseau. Si vous n'indiquez aucune valeur, l'adresse IP privée est automatiquement affectée.
- Enregistrement DNS : indiquez si un enregistrement DNS privé doit être affecté.
- Nom d'hôte : entrez le nom d'hôte à utiliser pour DNS dans le réseau cloud. Cette option est disponible uniquement si le VCN et le sous-réseau ont tous deux des étiquettes DNS et que vous avez choisi d'affecter un enregistrement DNS privé.
- Sélection d'un réseau cloud virtuel existant : sélectionnez cette option, puis entrez les informations suivantes.
- (Facultatif) Pour configurer des paramètres avancés pour l'instance de conteneur, cliquez sur Afficher les options avancées, puis indiquez les options suivantes si nécessaire :
- Dans l'onglet Options avancées, vous pouvez configurer les options suivantes :
- Délai d'expiration de l'arrêt correct (secondes) : définissez la durée pendant laquelle l'instance de conteneur attend l'arrêt du système d'exploitation avant la mise hors tension.
-
Stratégie de redémarrage de conteneur : sélectionnez Toujours, Jamais et En cas d'échec.
Vous pouvez définir la stratégie de redémarrage des conteneurs dans une instance de conteneur lorsque vous les créez. Lorsqu'un conteneur se ferme (arrête, redémarre ou échoue), le code de sortie et l'heure de sortie sont disponibles dans l'API et la stratégie de redémarrage est appliquée. Si tous les conteneurs quittent et ne redémarrent pas, l'instance de conteneur est arrêtée.
Sélectionnez l'une des options suivantes :
- Toujours : les conteneurs redémarrent toujours, même s'ils s'arrêtent correctement. "Toujours" est préférable si vous voulez vous assurer que votre conteneur est toujours en cours d'exécution, comme un serveur Web. Ce paramètre de stratégie est défini par défaut.
- Jamais : les conteneurs ne redémarrent jamais, quelle que soit la raison de leur fermeture.
- En cas d'échec : les conteneurs ne redémarrent que s'ils se ferment avec une erreur. L'option "En cas d'échec" est recommandée si vous souhaitez effectuer une certaine tâche et vous assurer qu'elle se termine avec succès.
- Dans l'onglet Balises, ajoutez des balises à l'instance de conteneur. Si vous êtes autorisé à créer une ressource, vous disposez également des droits d'accès nécessaires pour lui appliquer des balises à format libre. Pour appliquer une balise définie, vous devez disposer de droits d'accès permettant d'utiliser l'espace de noms de balise. Pour plus d'informations sur le balisage, reportez-vous à Balises de ressource. Si vous n'êtes pas certain d'appliquer des balises, ignorez cette option ou demandez à l'administrateur. Vous pouvez appliquer les balises ultérieurement.
- Dans l'onglet Options avancées, vous pouvez configurer les options suivantes :
- Cliquez sur Suivant pour configurer les conteneurs dans l'instance de conteneur.
- Entrez le nom du premier conteneur. Vous pouvez ajouter ou modifier le nom ultérieurement. Il n'est pas nécessaire que le nom soit unique car un identificateur Oracle Cloud (OCID) identifie le conteneur de manière unique. Evitez de saisir des informations confidentielles.
-
Sous Image, cliquez sur Sélectionner une image, puis suivez les étapes ci-après dans le panneau Image de conteneur pour sélectionner une image de conteneur.
-
Sélectionnez une source d'image :
-
OCI Container Registry : OCI Registry, également appelé Container Registry, est un registre géré par Oracle qui permet de stocker, de partager et de gérer des images de conteneur. Pour plus d'informations, reportez-vous à Container Registry.
-
Registre externe : registre externe, tel que Docker Hub, dans lequel vous pouvez choisir une image fournie par des fournisseurs tiers.
- Clés secrètes de coffre pour l'autorisation d'extraction d'image : vous pouvez héberger des images de conteneur dans des registres ou des référentiels privés nécessitant une autorisation afin d'extraire les images. Nous vous recommandons de stocker vos informations d'identification à l'aide du service Oracle Cloud Infrastructure Vault pour améliorer la sécurité et faciliter la gestion des informations d'identification. Pour plus d'informations, reportez-vous à Clés secrètes Vault pour l'autorisation d'extraction d'image.
-
-
Sélectionnez une image.
-
Cliquez sur Sélectionner une image.Remarque
Vous devez créer une stratégie qui sélectionne l'image de conteneur. Reportez-vous à Sélection de l'image de conteneur à l'aide de la console.
-
-
Sous la section Variables d'environnement, vous pouvez définir les variables d'environnement utilisées par le conteneur.
Les images de conteneur prennent en charge les variables d'environnement pour personnaliser leur exécution. Par exemple, l'image NGINX officielle prend en charge les variables d'environnement NGINX_HOST et NGINX_PORT. Vous pouvez donc définir la valeur pour personnaliser l'exécution avec les variables suivantes :
- NGINX_HOST=foobar.com
- NGINX_PORT=80
- Pour configurer des paramètres avancés pour le conteneur, cliquez sur Afficher les options avancées, puis indiquez les options suivantes si nécessaire :
- Dans l'onglet Ressources, vous pouvez configurer la quantité de ressources consommées par le conteneur en absolus ou en pourcentages. Par défaut, le conteneur peut utiliser toutes les ressources dans l'instance de conteneur.
- Dans l'onglet Options de démarrage, vous pouvez configurer les arguments de répertoire de travail et ENTRYPOINT pour le conteneur.
- Dans l'onglet Sécurité, vous pouvez indiquer les paramètres de sécurité du conteneur.
- Cochez la case Activer le système de fichiers racine en lecture seule pour appliquer un accès en lecture seule au système de fichiers racine du conteneur.
- Cochez la case Exécuter en tant qu'utilisateur autre que root pour vous assurer que l'utilisateur root n'exécute pas le conteneur.
- Lorsque vous activez Exécuter en tant qu'utilisateur non root, la valeur ID utilisateur ne peut pas être définie sur 0.
- Utilisez les champs ID utilisateur et ID groupe pour définir l'ID utilisateur et l'ID groupe afin d'exécuter le processus de point d'entrée du conteneur.
- La valeur de ID utilisateur et ID groupe doit être un entier compris entre 0 et 65535. La valeur par défaut est 0.
- Les valeurs ID utilisateur et ID groupe que vous indiquez remplacent les valeurs définies dans l'image de conteneur. Lorsque la valeur ID utilisateur n'est pas spécifiée, le processus de point d'entrée du conteneur s'exécute en tant qu'utilisateur root.
- Vous devez définir l'ID utilisateur avant de définir l'ID groupe.
- Sous la section Configurer les fonctionnalités Linux, vous pouvez configurer les fonctionnalités Linux pour votre conteneur. Par défaut, le conteneur est lancé avec plusieurs fonctionnalités que vous pouvez choisir de supprimer.
Le champ Ajouter des fonctionnalités et le champ Supprimer des fonctionnalités prennent en charge la valeur ALL, qui autorise ou supprime toutes les fonctionnalités. La valeur ALL fait référence aux fonctionnalités Linux activées par défaut.
- Si vous ne renseignez pas les champs Ajouter des fonctionnalités et Supprimer, toutes les fonctionnalités par défaut sont disponibles pour votre conteneur.
- Si vous entrez ALL dans le champ Ajouter des fonctionnalités, toutes les fonctionnalités sont disponibles, à l'exception de celles répertoriées dans le champ Fonctionnalités de suppression, et ignore ALL dans le champ Fonctionnalités de suppression.
- Si vous saisissez TOUT dans le champ Fonctions de suppression, le conteneur contient uniquement les fonctionnalités répertoriées dans le champ Ajouter des fonctionnalités.
- Dans d'autres cas, supprime toutes les fonctionnalités de l'ensemble par défaut répertorié dans le champ Fonctions de suppression, puis ajoute les fonctionnalités répertoriées dans le champ Ajouter des fonctionnalités et renvoie finalement le résultat en tant que capacité pour votre conteneur.
- La création de l'instance de conteneur échoue si vous fournissez des fonctionnalités qui ne figurent pas dans la liste ci-dessous.
Toutes les fonctionnalités Linux activées par défaut lors de la création d'un conteneur Capacité Description CAP_CHOWN Apporte des modifications aux UID de fichier et aux GID. CAP_DAC_OVERRIDE Contrôle d'accès discrétionnaire (DAC) qui contourne les vérifications d'autorisation de lecture, d'écriture et d'exécution de fichiers. CAP_FSETID - N'efface pas les bits en mode set-user-ID et set-group-ID lorsqu'un fichier est modifié.
- Définit le bit set-group-ID pour un fichier dont le GID ne correspond pas au fichier. système ou l'un des GID supplémentaires du processus appelant.
CAP_FOWNER Ignore les vérifications de droits d'accès sur les opérations qui nécessitent normalement que l'UID du système de fichiers du processus corresponde à l'UID du fichier, exclut les opérations couvertes par CAP_DAC_OVERRIDE et CAP_DAC_READ_SEARCH. CAP_MKNOD Crée des fichiers spéciaux à l'aide de mknod(2). CAP_NET_RAW - Utilise des prises RAW et PACKET.
- Liaison à n'importe quelle adresse pour un proxy transparent .
CAP_SETGID - Effectue des manipulations des IDG de processus et de la liste des IDG supplémentaires.
- Forge le GID lors de la transmission des informations d'identification de socket via les sockets de domaine UNIX.
- Ecrit un mappage d'ID de groupe dans un espace de noms utilisateur.
CAP_SETUID - Effectue des manipulations des UID de processus.
- Forge l'UID lors de la transmission des informations d'identification de socket via les sockets de domaine UNIX.
- Ecrit une mise en correspondance d'ID utilisateur dans un espace de noms utilisateur.
CAP_SETFCAP Définit les fonctionnalités des fichiers. CAP_SETPCAP Si les fonctionnalités de fichier ne sont pas prises en charge, accorde ou supprime toute capacité dans la capacité autorisée de l'appelant définie sur ou à partir de tout autre processus. CAP_NET_BIND_SERVICE Associe un socket aux ports privilégiés du domaine Internet (numéros de port inférieurs à 1024). CAP_SYS_CHROOT Utilise chroot(2) pour passer à un autre répertoire root. CAP_KILL Ignore les contrôles d'autorisation pour l'envoi de signaux, ce qui inclut l'utilisation de l'opération ioctl(2) KDSIGACCEPT. CAP_AUDIT_WRITE Ecrit les enregistrements dans le journal d'audit du noyau.
- Pour configurer un autre conteneur dans l'instance, cliquez sur + Autre conteneur et répétez les étapes précédentes.
- Cliquez sur Suivant pour vérifier l'instance de conteneur et ses conteneurs.
- Cliquez sur Créer.
-
Utilisez la commande oci container-instances container-instance create pour créer une instance de conteneur. Pour utiliser cette commande, remplacez compartment_ocid, logical_ad et subnetId par vos ressources.$ 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"
Afin d'obtenir la liste complète des indicateurs et des options de variable pour les commandes d'interface de ligne de commande, reportez-vous à Référence de ligne de commande.
Utilisez l'opération CreateContainerInstance.