Creación de una instancia de contenedor
Cree una instancia de contenedor.
Puede crear un máximo de 60 contenedores en cada instancia de contenedor.
- Al crear una instancia de contenedor, intervienen varios otros recursos, como una imagen, una red en la nube y una subred. Esos recursos pueden estar en el mismo compartimento que la instancia o en otros compartimentos. Debe tener el nivel de acceso necesario para cada uno de los compartimentos implicados para crear la instancia. Consulte Política de IAM necesaria.
-
Al especificar una imagen de contenedor, se debe poder acceder al registro en el que reside la imagen desde la subred que proporcione para la instancia de contenedor. Si la imagen de contenedor reside en OCI Container Registry, especifique la imagen en una subred de una red virtual en la nube (VCN) con un gateway de servicio. Si la imagen de contenedor reside en un registro externo alojado en la red pública de Internet, especifique la imagen en una subred pública de una VCN con un gateway de Internet o en una subred privada de una VCN con un gateway de traducción de direcciones de red (NAT).
Para crear una instancia de contenedor, realice los siguientes pasos:
-
Abra el menú de navegación y haga clic en Servicios para desarrolladores. En Contenedores y artefactos, haga clic en Instancias de contenedor.
- Haga clic en Create container instance.
- Introduzca un nombre para la instancia de contenedor. Puede agregar o cambiar el nombre posteriormente. No es necesario que el nombre sea único porque un identificador Oracle Cloud (OCID) identifica de manera única la instancia de contenedor. Evite introducir información confidencial.
- Seleccione el compartimento en el que se creará la instancia. Los otros recursos que seleccione pueden provenir de diferentes compartimentos.
- En Ubicación, seleccione las siguientes opciones:
- Seleccione el dominio de disponibilidad en el que desea crear la instancia.
-
(Opcional) Si desea especificar un dominio de errores, haga clic en Mostrar opciones avanzadas. A continuación, en Fault domain, seleccione el dominio de errores que desea utilizar para la instancia. Si no especifica el dominio de errores, el sistema selecciona uno para usted. Puede editar el dominio de errores después de crear la instancia. Para obtener más información, consulte Dominios de errores.
En Unidad, seleccione la unidad flexible para la instancia de contenedor. Las unidades flexibles tienen un número personalizado de OCPU y cantidad de memoria.
- En Número de OCPU, seleccione el número de OCPU que desea asignar a esta instancia arrastrando el control deslizante. Los otros recursos se ajustan en proporción.
- Para Cantidad de memoria (GB), seleccione la cantidad de memoria que desea asignar a esta instancia arrastrando el control deslizante. La cantidad de memoria permitida se basa en el número de OCPU seleccionadas.
Nota
Necesitará una regla de seguridad como parte de una lista de seguridad o un grupo de seguridad de red para permitir el tráfico de red a las aplicaciones que se ejecutan en el contenedor. Por ejemplo, si la aplicación se ejecuta en el protocolo TCP, puerto 8080, necesita una regla de seguridad para TCP y puerto 8080. Para obtener información sobre la configuración de reglas de seguridad, consulte Reglas de seguridad.- Para Red principal y subred, especifique la red virtual en la nube (VCN) y la subred en las que desea crear la instancia. Seleccione si desea utilizar una VCN y una subred existentes, crear una nueva VCN o subred o introducir el OCID de una subred existente:
- Seleccionar red virtual existente en la nube: seleccione esta opción y, a continuación, introduzca la siguiente información.
- Red virtual en la nube: red en la nube en la que se va a crear la instancia.
- Subnet: subred dentro de la red en la nube a la que está asociada la instancia. Las subredes son públicas o privadas. Privada significa que las instancias de esa subred no pueden tener direcciones IP públicas. Para obtener más información, consulte Acceso a Internet. Las subredes también pueden ser específicas de dominios de disponibilidad o regionales. Los regionales tienen "regional" después del nombre. Se recomienda el uso de subredes regionales. Para obtener más información, consulte Acerca de las subredes regionales.
- Para utilizar una subred existente, seleccione Seleccionar subred existente y, a continuación, seleccione la subred.
- Para crear una subred, seleccione Crear nueva subred pública y, a continuación, introduzca la siguiente información:
- Nuevo nombre de subred: nombre para la subred. Evite introducir información confidencial.
- Crear en compartimento: compartimento en el que desea poner la subred.
- bloque de CIDR: un único bloque CIDR contiguo para la subred (por ejemplo, 172.16.0.0/24). Asegúrese de que esté dentro del bloque de CIDR de la red en la nube y de que no se solape con otras subredes. No se puede cambiar este valor posteriormente. Consulte Rangos de direcciones y tamaño de VCN permitidos. Como referencia, aquí dispone de una calculadora de CIDR.
- Crear nueva red virtual en la nube: seleccione esta opción y, a continuación, introduzca la siguiente información.
- Nombre de la nueva red virtual en la nube: nombre de la subred. Nombre fácil de recordar para la red. Evite introducir información confidencial.
- Crear en compartimento: compartimento en el que desea poner la red.
- Crear nueva subred pública: subred dentro de la red en la nube a la que se asocia la instancia. Las subredes son públicas o privadas. Private significa que las instancias de esa subred no pueden tener direcciones IP públicas. Para obtener más información, consulte Acceso a Internet. Las subredes también pueden ser específicas de dominios de disponibilidad o regionales. Los regionales tienen "regional" después del nombre. Se recomienda el uso de subredes regionales. Para obtener más información, consulte Acerca de las subredes regionales.
- Nuevo nombre de subred: nombre de la subred. No tiene que ser único y puede cambiarse más adelante. Evite introducir información confidencial.
- Crear en compartimento: compartimento en el que desea poner la subred.
- bloque de CIDR: un único bloque CIDR contiguo para la subred, por ejemplo, 172.16.0.0/24. Asegúrese de que esté dentro del bloque de CIDR de la red en la nube y de que no se solape con otras subredes. Este valor no se puede cambiar posteriormente. Consulte Rangos de direcciones y tamaño de VCN permitidos y estacalculadora de CIDR.
Introducir OCID de subred: seleccione esta opción y, a continuación, introduzca el OCID de subred.
- (Opcional) Si la subred es pública, seleccione Asignar una dirección IPv4 pública para asignar a la instancia una dirección IP pública. Una dirección IP pública hace que se pueda acceder a la instancia desde Internet. Para obtener más información, consulte Acceso a Internet.
-
(Opcional) Para establecer la configuración de red avanzada, haga clic en Mostrar opciones avanzadas y, a continuación, especifique las siguientes opciones según sea necesario:
- Utilizar grupos de seguridad de red para controlar el tráfico: seleccione esta opción si desea agregar la VNIC principal de la instancia a uno o más grupos de seguridad de red (NSG). A continuación, especifique los NSG. Esta opción solo está disponible cuando se utiliza una VCN existente. Para obtener más información, consulte Grupos de seguridad de red.
- Dirección IP privada: introduzca una dirección IP privada disponible de su elección en el CIDR de la subred. Si no especifica un valor, la dirección IP privada se asigna automáticamente.
- Registro de DNS: especifique si desea asignar un registro de DNS privado.
- Nombre de host: introduzca un nombre de host que se utilizará para DNS dentro de la red en la nube. Esta opción solo está disponible si la VCN y la subred tienen etiquetas de DNS, y ha seleccionado asignar un registro de DNS privado.
- Seleccionar red virtual existente en la nube: seleccione esta opción y, a continuación, introduzca la siguiente información.
- (Opcional) Para configurar valores avanzados para la instancia de contenedor, haga clic en Mostrar opciones avanzadas y, a continuación, especifique las siguientes opciones según sea necesario:
- En el separador Opciones avanzadas, puede configurar las siguientes opciones:
- Tiempo de espera de cierre controlado (segundos): defina la cantidad de tiempo que la instancia de contenedor espera a que el SO se cierre antes de apagarlo.
-
Política de reinicio de contenedor: seleccione entre Always, Never, y On failure.
Puede definir la política de reinicio para los contenedores de una instancia de contenedor al crearlos. Cuando se cierra un contenedor individual (tienes, reinicios o fallos), el código de salida y la hora de salida están disponibles en la API y se aplica la política de reinicio. Si todos los contenedores salen y no se reinician, la instancia del contenedor se cierra.
Seleccione una de las opciones siguientes:
- Siempre: los contenedores siempre se reinician, incluso si se cierran correctamente. Se prefiere "Siempre" si desea asegurarse de que el contenedor se está ejecutando siempre, como un servidor web. Esta configuración de directiva es la predeterminada.
- Nunca: los contenedores nunca se reinician, independientemente del motivo por el que salieron.
- En caso de fallo: los contenedores solo se reinician si salen con un error. Se prefiere "En caso de fallo" si desea realizar una determinada tarea y asegurarse de que se completa correctamente.
- En el separador Etiquetas, agregue etiquetas a la instancia de contenedor. Si tiene permisos para crear un recurso, también los tiene para aplicar etiquetas de formato libre a ese recurso. Para aplicar una etiqueta definida, debe tener permisos para utilizar el espacio de nombres de la etiqueta. Para obtener más información sobre el etiquetado, consulte Etiquetas de recursos. Si no está seguro si debe aplicar etiquetas, omita esta opción o consulte con el administrador. Puede aplicar etiquetas más tarde.
- En el separador Opciones avanzadas, puede configurar las siguientes opciones:
- Haga clic en Siguiente para configurar los contenedores dentro de la instancia de contenedor.
- Introduzca un nombre para el primer contenedor. Puede agregar o cambiar el nombre posteriormente. No es necesario que el nombre sea único porque un identificador Oracle Cloud (OCID) identifica de manera única el contenedor. Evite introducir información confidencial.
-
En Imagen, haga clic en Seleccionar imagen y, a continuación, siga estos pasos en el panel Imagen de contenedor para seleccionar una imagen de contenedor.
-
Seleccione un origen de imagen:
-
OCI Container Registry: OCI Registry, también conocido como Container Registry, es un registro gestionado por Oracle que permite almacenar, compartir y gestionar imágenes de contenedor. Para obtener más información, consulte Container Registry.
-
Registro externo: registro externo, como Docker Hub, donde puede elegir una imagen proporcionada por proveedores externos.
- Secretos de almacén para autorización de extracción de imágenes: puede alojar imágenes de contenedor en registros o repositorios privados que requieran autorización para extraer las imágenes. Recomendamos que almacene sus credenciales mediante el servicio Oracle Cloud Infrastructure Vault para mejorar la seguridad y facilitar la gestión de credenciales. Para obtener más información, consulte Secretos de almacén para autorización de extracción de imágenes.
-
-
Seleccione una imagen.
-
Haga clic en Seleccionar imagen.Nota
Debe crear una política que seleccione la imagen de contenedor. Consulte Selección de la imagen de contenedor mediante la consola.
-
-
En la sección Variables de entorno, puede definir las variables de entorno utilizadas por el contenedor.
Las imágenes de contenedor soportan variables de entorno para personalizar su ejecución. Por ejemplo, la imagen NGINX oficial soporta las variables de entorno NGINX_HOST y NGINX_PORT, por lo que puede definir el valor para personalizar la ejecución en las siguientes variables:
- NGINX_HOST=foobar.com
- NGINX_PORT=80
- Para configurar valores avanzados para el contenedor, haga clic en Mostrar opciones avanzadas y, a continuación, especifique las siguientes opciones según sea necesario:
- En el separador Recursos, puede configurar la cantidad de recursos que consume el contenedor en ausencias o porcentajes. Por defecto, el contenedor puede utilizar todos los recursos de la instancia de contenedor.
- En el separador Opciones de inicio, puede configurar el directorio de trabajo y los argumentos ENTRYPOINT para el contenedor.
- En el separador Seguridad, puede especificar la configuración de seguridad del contenedor.
- Seleccione la casilla de control Activar Sistema de Archivos Raíz de Sólo Lectura para aplicar acceso de solo lectura al sistema de archivos raíz del contenedor.
- Seleccione la casilla de control Run as non-root user para asegurarse de que el usuario raíz no ejecute el contenedor.
- Al activar Run as non-root user, el valor de User ID no se puede definir en 0.
- Utilice los campos ID de Usuario e ID de Grupo para definir el ID de usuario (ID) y el ID de grupo (GID) para ejecutar el proceso de punto de entrada del contenedor.
- El valor de User ID (ID de usuario) y Group ID (ID de grupo) debe ser un entero entre 0 y 65535. El valor por defecto es 0.
- Los valores de ID de usuario e ID de grupo que especifique sustituyen los valores definidos en la imagen de contenedor. Cuando no se especifica el valor de ID de usuario, el proceso de punto de entrada del contenedor se ejecuta como usuario root.
- Debe definir el ID de usuario antes de definir el ID de grupo.
- En la sección Configurar capacidades de Linux, puede configurar las capacidades de Linux para el contenedor. Por defecto, el contenedor se inicia con varias capacidades que puede elegir borrar.
Tanto el campo Agregar capacidades como el campo Borrar capacidades admiten el valor ALL, que permite o borra todas las capacidades. El valor ALL hace referencia a las capacidades de Linux que están activadas por defecto.
- Si deja en blanco Agregar capacidades y Borrar capacidades, todas las capacidades por defecto están disponibles para el contenedor.
- Si introduce TODAS en el campo Agregar capacidades, todas las capacidades están disponibles excepto las que se muestran en el campo Borrar capacidades e ignora TODAS en el campo Borrar capacidades.
- Si introduce TODAS en el campo Borrar capacidades, el contenedor contiene solo las capacidades que se muestran en el campo Agregar capacidades.
- En otros casos, borra todas las capacidades del juego por defecto que se muestra en el campo Borrar capacidades y, a continuación, agrega las capacidades que se muestran en el campo Agregar capacidades y, por último, devuelve el resultado como capacidad para el contenedor.
- La creación de la instancia de contenedor falla si proporciona capacidades que no están en la siguiente lista.
Todas las capacidades de Linux activadas por defecto al crear un contenedor Capacidad Descripción CAP_CHOWN Realiza cambios en los UID y GID de archivo. CAP_DAC_OVERRIDE Control de acceso discrecional (DAC) que omite las comprobaciones de permisos de lectura, escritura y ejecución de archivos. CAP_FSETID - No borra los bits de modo set-user-ID y set-group-ID cuando se modifica un archivo.
- Define el bit set-group-ID para un archivo cuyo GID no coincide con el archivo. sistema o cualquiera de los GID suplementarios del proceso de llamada.
CAP_FOWNER Omite las comprobaciones de permisos en las operaciones que normalmente necesitan que el UID del sistema de archivos del proceso coincida con el UID del archivo, excluye las operaciones cubiertas por CAP_DAC_OVERRIDE y CAP_DAC_READ_SEARCH. CAP_MKNOD Crea archivos especiales con mknod(2). CAP_NET_RAW - Utiliza sockets RAW y PACKET.
- Se vincula a cualquier dirección para la representación transparente .
CAP_SETGID - Realiza manipulaciones de GID de proceso y lista de GID complementarios.
- Forja GID al transferir credenciales de socket mediante sockets de dominio UNIX.
- Escribe una asignación de ID de grupo en un espacio de nombres de usuario.
CAP_SETUID - Realiza manipulaciones de UID de proceso.
- Forja UID al transferir credenciales de socket mediante sockets de dominio UNIX.
- Escribe una asignación de ID de usuario en un espacio de nombres de usuario.
CAP_SETFCAP Define las capacidades de los archivos. CAP_SETPCAP Si las capacidades de archivo no están soportadas, otorga o elimina cualquier capacidad del juego de capacidades permitido del emisor de la llamada en o desde cualquier otro proceso. CAP_NET_BIND_SERVICE Enlaza un socket a puertos con privilegios de dominio de Internet (números de puerto inferiores a 1024). CAP_SYS_CHROOT Utiliza chroot(2) para cambiar a un directorio raíz diferente. CAP_KILL Omite las comprobaciones de permisos para enviar señales, lo que incluye el uso de la operación ioctl(2) KDSIGACCEPT. CAP_AUDIT_WRITE Escribe registros en el log de auditoría del núcleo.
- Para configurar otro contenedor en la instancia, haga clic en + Otro contenedor y repita los pasos anteriores.
- Haga clic en Siguiente para revisar la instancia de contenedor y sus contenedores.
- Haga clic en Crear.
-
Utilice el comando de creación de instancias de contenedor de oci para crear una instancia de contenedor. Para utilizar este comando, sustituya compartment_ocid, logical_ad y subnetId por los recursos.$ 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"
Para obtener una lista completa de indicadores y opciones de variables para los comandos de la CLI, consulte la Referencia de la línea de comandos.
Utilice la operación CreateContainerInstance.