Creación de una instancia de contenedor
Siga estos pasos para crear una instancia de contenedor.
- Al crear la 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 a cada compartimento implicado 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).
Puede crear un máximo de 60 contenedores en cada instancia del contenedor.
Para crear una instancia de contenedor, realice los siguientes pasos:
- Vaya a la página de lista Container Instances. Si necesita ayuda para buscar la página de lista, consulte Lista de instancias de contenedor.
- Seleccione Crear instancia de contenedor.
- Complete la información para los pasos numerados de la siguiente manera.
1. Agregar Detalles Básicos
- Nombre: introduzca un nombre para la instancia de contenedor. Puede agregar o cambiar el nombre posteriormente. El nombre no tiene que ser único porque un identificador de Oracle Cloud (OCID) ya identifica la instancia del contenedor de manera única. Evite introducir información confidencial.
- Crear en compartimento: seleccione el compartimento en el que desea crear la instancia. Los otros recursos que seleccione pueden provenir de diferentes compartimentos.
Etiquetas
En la sección 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 de si se deben aplicar etiquetas, omita esta opción o consulte con el administrador. Puede aplicar etiquetas más tarde.
Ubicación
En la sección Colocación, seleccione las siguientes opciones:
- Dominio de disponibilidad: seleccione el dominio de disponibilidad en que desea crear la instancia.
-
Dominio de errores (opcional): por defecto, el sistema selecciona un dominio de errores. También puede seleccionar el dominio de errores que va a utilizar para la instancia. Para obtener más información, consulte Dominios de errores.
Unidad
En la sección Unidad, seleccione la unidad flexible para la instancia de contenedor. Las unidades flexibles tienen un número de OCPU y cantidad de memoria personalizables. Seleccione Cambiar unidad para realizar cambios en la unidad.
- Número de OCPU: para Número de OCPU, seleccione el numero de OCPU que desea asignar a esta instancia arrastrando el control deslizante. Los otros recursos se ajustan en proporción.
- Cantidad de memoria (GB): 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.
Redes
En la sección Red, configure los detalles de red para la instancia: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 puerto TCP 8080, necesita una regla de seguridad para TCP y el puerto 8080. Para obtener información sobre la configuración de reglas de seguridad, consulte Reglas de seguridad.- Red principal:
Seleccione una opción:
- Seleccionar red virtual en la nube existente: seleccione una VCN existente.
- Crear nueva red virtual en la nube: cree una VCN en este cuadro de diálogo.
- Introducir OCID de subred: introduzca el OCID de una VCN existente.
Rellene los siguientes campos:
- Compartimento de red virtual de la nube: seleccione el compartimento.
- Red virtual en la nube: seleccione la VCN.
- Subred
Una subred dentro de la red en la nube a la que está asociada la instancia. Las subrede 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 un dominio 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 locales.
Seleccione una opción de subred:
- Seleccionar subred existente: seleccione el compartimento y la subred.
- Crear nueva subred pública: introduzca la siguiente información:
- Nuevo nombre del subred: nombre para la subred. Evite introducir información confidencial.
- Compartimento de subred: compartimento donde desea poner la subred.
- Bloque CIDR: un solo 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.
- Dirección IPv4 pública
Seleccione una opción:
- 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.
- No asignar una dirección IPv4 pública: no se ha asignado ninguna dirección IP pública.
- Opciones de red avanzadas
Seleccione las opciones de red avanzadas.
- 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.
- Activar comprobación de destino de origen: indica si la comprobación de origen/destino está desactivada en la VNIC.
- Dirección IP privado: introduzca una dirección IP privado 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 se debe asignar un registro DNS privado.
- Nombre de host: introduzca un nombre de host que se utilizará para el 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 se selecciona una opción para asignar un registro de DNS privado.
Opciones Avanzadas
Configure los valores avanzados para la instancia de contenedor.
- Timeout de cierre controlado (segundos): defina la cantidad de tiempo que la instancia de contenedor espera a que el SO se cierre antes de apagar el sistema operativo.
- Política de reinicio de contenedor:
Puede definir la política de reinicio para los contenedores de una instancia de contenedor cuando los cree. Cuando un contenedor individual sale (se detiene, se reinicia o falla), 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.
Seleccione Siguiente para configurar los contenedores dentro de la instancia de contenedor.
2. Configurar contenedores
Complete la siguiente información de contenedor.
- Nombre: introduzca un nombre para el primer contenedor. Puede agregar o cambiar el nombre posteriormente. El nombre no tiene que ser único porque un identificador de Oracle Cloud (OCID) identifica del contenedor de forma única. Evite introducir información confidencial.
- Imagen:
Seleccione Seleccionar imagen y, a continuación, siga estos pasos.
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.
Secreto de OCI Vault: puede alojar imágenes de contenedor en registros o repositorios privados que requieren autorización para extraer las imágenes. Le 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 Vault Secrets for Image Pull Authorization.
- Variables de entorno
Defina las variables de ambiente que deberá usar el contenedor.
Las imágenes de contenedor soportan variables de entorno para personalizar su ejecución. Por ejemplo, la imagen oficial de NGINX soporta variables de entorno
NGINX_HOSTyNGINX_PORT, por lo que puede definir el valor para personalizar la ejecución en las siguientes variables:NGINX_HOST=foobar.com NGINX_PORT=80 - Recursos: puede configurar la cantidad de recursos que consume el contenedor en absolutos o porcentajes. Por defecto, el contenedor puede utilizar todos los recursos de la instancia de contenedor.
- Opciones de inicio: puede configurar los argumentos de Directorio de trabajo y
ENTRYPOINTpara el contenedor. - 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 Ejecutar como usuario no raíz para asegurarse de que el contenedor no se ejecute como usuario raíz.
- 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 Capacidades de borrado, el contenedor solo contiene 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.
Seleccione Siguiente para revisar la instancia de contenedor y sus contenedores.
Revisar
Revise las selecciones.
Seleccione Crear.
Utilice el comando
oci container-instances container-instance createpara crear una instancia de contenedor. Para utilizar este comando, sustituya compartment_ocid, logical_ad y subnetId por sus 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.