Todos los productos
Search
Centro de documentos

Container Compute Service:Create a stateless workload Deployment

Última actualización: Sep 21, 2026

Container Compute Service (ACS) permite crear aplicaciones sin estado mediante imágenes de contenedor, plantillas de orquestación en YAML o la herramienta de línea de comandos kubectl. Este tema toma como ejemplo una aplicación Nginx para mostrar cómo crear una aplicación sin estado en un clúster de ACS.

Consola

Crear a partir de una imagen

Paso 1: Configurar la información básica de la aplicación

  1. Inicie sesión en la consola de ACS. En el panel de navegación izquierdo, haga clic en Clusters.

  2. En la página Clusters, haga clic en el nombre del clúster de destino. En el panel de navegación izquierdo, seleccione Workloads > Deployments.

  3. En la página Deployments, haga clic en Create from Image.

  4. En el asistente Basic Information, configure los ajustes básicos de su aplicación.

    Elemento de configuración

    Descripción

    Application Name

    Introduzca un nombre para la aplicación.

    Replicas:

    Número de pods de la aplicación. El valor predeterminado es 2.

    Workloads

    Seleccione Deployment.

    Label

    Agregue una etiqueta para identificar esta aplicación.

    Annotations

    Agregue una anotación a la aplicación.

    Instance Type

    Seleccione un tipo de cómputo. Para más detalles sobre los tipos de cómputo, consulte Overview of ACS pod instances.

    QoS Type

    Seleccione una clase de calidad de servicio (QoS).

    Correspondencia entre el tipo de cómputo y la calidad de potencia de cómputo

    Tipo de cómputo (etiqueta)

    Clases de calidad de potencia de cómputo compatibles (etiquetas)

    General-purpose (general-purpose)

    Default (default), BestEffort (best-effort)

    Performance-optimized (performance)

    Default (default), BestEffort (best-effort)

    GPU type (gpu)

    Default (default), BestEffort (best-effort)

    High-performance network GPU (gpu-hpn)

    Default (default)

    Para obtener más información, consulte QoS class definitions.

  5. Haga clic en Next para ir al asistente Container.

Paso 2: Configurar los contenedores

En la página del asistente Container, configure la imagen del contenedor, los recursos, los puertos, las variables de entorno, las comprobaciones de estado, el ciclo de vida, los volúmenes y el registro.

Nota

Para agregar varios contenedores al pod, haga clic en Add Container junto a la pestaña Container 1.

  1. En la sección General, complete la configuración básica del contenedor.

    Elemento de configuración

    Descripción

    Image Name

    • Seleccione una imagen.

      Haga clic en Select Image para elegir la imagen obligatoria.

      • Container Registry Enterprise Edition: seleccione una imagen de Enterprise Edition alojada en Alibaba Cloud Container Registry (ACR). Debe seleccionar la región y la instancia de ACR donde se encuentra la imagen. Para obtener más información sobre ACR, consulte What is Container Registry?.

      • Container Registry Personal Edition (debe activarse primero): seleccione una imagen de Personal Edition alojada en ACR. Debe seleccionar la región y la instancia de ACR donde se encuentra la imagen.

      • Artifact center: incluye imágenes base de sistemas operativos para aplicaciones en contenedores, imágenes de entornos de ejecución de lenguajes e imágenes relacionadas con inteligencia artificial y big data. Este ejemplo utiliza una imagen de Nginx de Artifact Center. Para obtener más información, consulte Artifact Center.

    • (Opcional) Establezca la política de extracción de imágenes.

      En la lista desplegable Image Pull Policy, seleccione una política de extracción. De forma predeterminada, no se establece ninguna política y Kubernetes utiliza IfNotPresent.

      • IfNotPresent: si la imagen ya existe de forma local (se extrajo previamente al host), no se vuelve a extraer. En caso contrario, se extrae la imagen.

      • Always: siempre extrae la imagen durante el despliegue o el escalado horizontal, e ignora cualquier copia local.

      • Never: utiliza únicamente la imagen local.

    • (Opcional) Establezca un secreto de extracción de imágenes.

      Haga clic en Set Image Pull Secret para acceder de forma segura a las imágenes privadas.

      • En las instancias de ACR Personal Edition, puede extraer imágenes de contenedores mediante la configuración de un secreto de extracción de imágenes. Para obtener más información, consulte Manage secrets.

      • En las instancias de ACR Enterprise Edition, puede extraer imágenes sin contraseñas mediante el componente passwordless. Para obtener más detalles, consulte Pull ACR images without passwords.

    Required Resources

    Establezca las cuotas de recursos del contenedor.

    • CPU: especifique los valores de solicitud y límite de CPU. De forma predeterminada, la solicitud es igual al límite y la facturación utiliza el método pay-as-you-go. Si establece un límite distinto mediante YAML, la solicitud se sobrescribe para coincidir con dicho límite. Para obtener más detalles, consulte Resource specifications.

    • Memory: especifique los valores de solicitud y límite de memoria. De forma predeterminada, la solicitud es igual al límite y la facturación utiliza el método pay-as-you-go. Si establece un límite distinto mediante YAML, la solicitud se sobrescribe para coincidir con dicho límite. Para obtener más detalles, consulte Resource specifications.

    Interactive Session

    (Opcional) Configure las opciones de inicio del contenedor.

    • stdin: envía la entrada de la consola al contenedor.

    • tty: adjunta la consola de entrada estándar como entrada de consola del contenedor.

    Nota

    Por lo general, se seleccionan stdin y tty de manera conjunta para vincular la terminal (tty) a la entrada estándar (stdin) del contenedor. Por ejemplo, un programa interactivo lee la entrada del usuario desde stdin y muestra la salida en la terminal.

    Init Containers

    (Opcional) Seleccione esta opción para crear un contenedor de inicialización.

    Los contenedores de inicialización proporcionan un mecanismo que bloquea o retrasa el inicio de los contenedores de aplicación hasta que finalizan correctamente. Tras ejecutarse con éxito, los contenedores de aplicación del pod se inician en paralelo. Por ejemplo, puede utilizar contenedores de inicialización para comprobar la disponibilidad de los servicios dependientes. Estos contenedores pueden incluir utilidades o scripts de instalación que no están presentes en la imagen de la aplicación para inicializar el entorno de ejecución; por ejemplo, establecer parámetros del kernel o generar archivos de configuración. Para obtener más información, consulte Init Containers.

  2. (Opcional) En la sección Ports, haga clic en Add para configurar los puertos del contenedor.

    Elemento de configuración

    Descripción

    Name

    Especifique un nombre para el puerto del contenedor.

    Container Port

    Especifique el puerto de acceso expuesto del contenedor. El número de puerto debe estar entre 1 y 65535.

    Protocol

    Los protocolos compatibles son TCP y UDP.

  3. (Opcional) En la sección Environments, haga clic en Add para configurar las variables de entorno.

    Puede configurar variables de entorno para el pod mediante pares clave-valor para agregar indicadores de entorno o pasar configuraciones. Para obtener más información, consulte Variables de entorno del pod.

    Parámetro

    Descripción

    Type

    Establezca el tipo de variable de entorno:

    • Custom

    • ConfigMaps

    • Secrets

    • Value/ValueFrom

    • ResourceFieldRef

    ConfigMap y Secret admiten hacer referencia a archivos completos.

    Este ejemplo utiliza un Secret. Cuando seleccione el tipo Secrets y elija un Secret de destino, se hará referencia de forma predeterminada a todos los archivos de ese Secret. Después de seleccionar Secret, introduzca un Variable Name y seleccione el nombre del Secret y la clave correspondientes en las dos listas desplegables de la derecha.

    El YAML correspondiente hace referencia al Secret completo:

    envFrom:
      - secretRef:
          name: test

    Variable Key

    Establezca el nombre de la variable de entorno.

    Value/ValueFrom

    Establezca el valor de la variable referenciada.

  4. (Opcional) En la sección Health Check, habilite Liveness, Readiness y Startup según sea necesario.

    • Liveness: se usa para determinar si un contenedor se ejecuta con normalidad. Si falla un número específico de comprobaciones, kubelet reinicia el contenedor. Las sondas Liveness detectan problemas que dejan al contenedor en ejecución pero sin capacidad de respuesta, como un interbloqueo.

    • Readiness: se usa para determinar si un contenedor está listo para recibir tráfico. Un pod se adjunta al backend de un servicio solo después de que su sonda Readiness se completa correctamente.

    • Startup: se ejecuta únicamente cuando inicia el contenedor para comprobar si este arrancó correctamente. La Liveness Probe y la Readiness Probe se ejecutan solo después de que la sonda Startup se completa correctamente.

    Para obtener más información, consulte Configure liveness, readiness, and startup probes.

    Parámetro

    Descripción

    HTTP

    Envía una solicitud HTTP GET al contenedor. Los parámetros compatibles incluyen los siguientes:

    • Protocol: HTTP o HTTPS.

    • Path: La ruta para acceder al servidor HTTP.

    • Port: El puerto expuesto del contenedor o el nombre del puerto. El número de puerto debe estar entre 1 y 65535.

    • HTTP Header: Encabezados personalizados en la solicitud HTTP. HTTP permite encabezados duplicados. Configúrelos como pares clave-valor.

    • Initial Delay (s): El parámetro initialDelaySeconds especifica cuántos segundos se espera después de que inicia el contenedor antes de ejecutar la primera comprobación. El valor predeterminado es 3 segundos.

    • Period (s): El parámetro periodSeconds especifica el intervalo de tiempo entre las comprobaciones. El valor predeterminado es 10 segundos. El mínimo es 1 segundo.

    • Timeout (s): El parámetro timeoutSeconds especifica la duración del tiempo de espera de la comprobación. El valor predeterminado es 1 segundo. El mínimo es 1 segundo.

    • Healthy Threshold: El número mínimo de comprobaciones exitosas consecutivas obligatorias tras un error para marcar el contenedor como saludable. El valor predeterminado es 1. El mínimo es 1. Para las comprobaciones de disponibilidad (liveness), este valor debe ser 1.

    • Unhealthy Threshold: El número mínimo de comprobaciones con errores consecutivas obligatorias tras un éxito para marcar el contenedor como no saludable. El valor predeterminado es 3. El mínimo es 1.

    TCP

    Abre un socket TCP hacia el contenedor. Kubelet intenta abrir un socket en el puerto especificado. Si lo logra, el contenedor se considera saludable; de lo contrario, se marca con errores. Los parámetros compatibles incluyen los siguientes:

    • Port: El puerto expuesto del contenedor o el nombre del puerto. El número de puerto debe estar entre 1 y 65535.

    • Initial Delay (s): El parámetro initialDelaySeconds especifica cuántos segundos se espera después de que inicia el contenedor antes de ejecutar la primera comprobación. El valor predeterminado es 15 segundos.

    • Period (s): El parámetro periodSeconds especifica el intervalo de tiempo entre las comprobaciones. El valor predeterminado es 10 segundos. El mínimo es 1 segundo.

    • Timeout (s): El parámetro timeoutSeconds especifica la duración del tiempo de espera de la comprobación. El valor predeterminado es 1 segundo. El mínimo es 1 segundo.

    • Healthy Threshold: El número mínimo de comprobaciones exitosas consecutivas obligatorias tras un error para marcar el contenedor como saludable. El valor predeterminado es 1. El mínimo es 1. Para las comprobaciones de disponibilidad (liveness), este valor debe ser 1.

    • Unhealthy Threshold: El número mínimo de comprobaciones con errores consecutivas obligatorias tras un éxito para marcar el contenedor como no saludable. El valor predeterminado es 3. El mínimo es 1.

    Command

    Ejecuta un comando dentro del contenedor para comprobar su estado. Los parámetros compatibles incluyen los siguientes:

    • Command: El comando que se usa para comprobar el estado del contenedor.

    • Initial Delay (s): El parámetro initialDelaySeconds especifica cuántos segundos se espera después de que inicia el contenedor antes de ejecutar la primera comprobación. El valor predeterminado es 5 segundos.

    • Period (s): El parámetro periodSeconds especifica el intervalo de tiempo entre las comprobaciones. El valor predeterminado es 10 segundos. El mínimo es 1 segundo.

    • Timeout (s): El parámetro timeoutSeconds especifica la duración del tiempo de espera de la comprobación. El valor predeterminado es 1 segundo. El mínimo es 1 segundo.

    • Healthy Threshold: El número mínimo de comprobaciones exitosas consecutivas obligatorias tras un error para marcar el contenedor como saludable. El valor predeterminado es 1. El mínimo es 1. Para las comprobaciones de disponibilidad (liveness), este valor debe ser 1.

    • Unhealthy Threshold: El número mínimo de comprobaciones con errores consecutivas obligatorias tras un éxito para marcar el contenedor como no saludable. El valor predeterminado es 3. El mínimo es 1.

  5. (Opcional) En la sección Lifecycle, configure el ciclo de vida del contenedor.

    Para el ciclo de vida del contenedor, puede configurar comandos previos al inicio, controladores posteriores al inicio y controladores previos a la detención. Para obtener más información, consulte Configure lifecycle.

    Parámetro

    Descripción

    Start

    Especifique un comando y sus argumentos para ejecutar antes de que inicie el contenedor.

    Post-start Hook

    Especifique un comando para ejecutar después de que inicie el contenedor.

    Pre-stop Hook

    Especifique un comando para ejecutar antes de que finalice el contenedor.

  6. (Opcional) En la sección Volume, monte volúmenes en el contenedor.

    • Almacenamiento local: monte ConfigMaps, Secrets o directorios temporales en las rutas del contenedor. Para obtener más información, consulte volúmenes.

    • Almacenamiento en la nube: admite discos en la nube, NAS, entre otros. Para más detalles, consulte Storage overview.

  7. (Opcional) En la sección Log, configure los campos Collection Configuration y Custom Tag.

    Parámetro

    Descripción

    Collection Settings

    • Logstore: crea un logstore correspondiente en Simple Log Service para almacenar los registros recopilados.

    • Log Path in Container (Can be set to stdout): admite registros de salida estándar (stdout) y de texto.

      • Stdout: recopila los registros de salida estándar del contenedor.

      • Registros de texto: recopila registros desde una ruta específica dentro del contenedor. Este ejemplo recopila todos los registros de texto en /var/log/nginx y admite caracteres comodín.

    Custom Tags

    También puede establecer etiquetas personalizadas. Una vez configuradas, estas etiquetas se incluyen junto con los registros del contenedor. Las etiquetas personalizadas le ayudan a categorizar los registros para facilitar las estadísticas y el filtrado durante el análisis.

  8. Haga clic en Next para ir al asistente Advanced.

Paso 3: Completar la configuración avanzada

En la página del asistente Advanced, configure el control de acceso, el escalado, la programación y las etiquetas o anotaciones.

  1. En la sección Access Control, configure cómo se expondrán los pods del backend.

    Este ejemplo utiliza ClusterIP e Ingress para crear una aplicación Nginx con acceso público.

    • Configure un Service: haga clic en Create junto a Services para establecer los parámetros del servicio.

      Expand to view service configuration details

      Elemento de configuración

      Descripción

      Name

      Introduzca un nombre para el servicio. Este ejemplo utiliza nginx-svc.

      Type

      Seleccione el tipo de servicio, lo cual determina cómo se accede a él. En este ejemplo se selecciona Cluster IP.

      • Cluster IP: expone el servicio en una IP interna dentro del clúster. Los servicios de este tipo solo son accesibles desde el interior del clúster. Este es el ServiceType predeterminado.

        Nota

        Cuando el tipo de servicio es Cluster IP, puede configurar un Headless Service.

      • Server Load Balancer: utiliza Alibaba Cloud Server Load Balancer (SLB) para exponer el servicio. Puede elegir entre acceso público o interno. El SLB de Alibaba Cloud enruta el tráfico hacia los servicios ClusterIP.

        • Crear un nuevo SLB: haga clic en Modify para cambiar las especificaciones del SLB.

        • Usar un SLB existente: seleccione una instancia de SLB de la lista.

        Nota

        El tipo LoadBalancer permite crear un nuevo SLB o reutilizar uno existente, pero con los siguientes límites:

        • Si usa una instancia de SLB existente, se sobrescribirán sus listeners actuales.

        • Las instancias de SLB que Kubernetes crea mediante Services no se pueden reutilizar, para evitar eliminaciones accidentales. Solo se pueden reutilizar las instancias de SLB creadas manualmente en la consola o mediante openapi.

        • Varios Services que reutilicen el mismo SLB no deben compartir el mismo puerto de listener del frontend, para evitar conflictos.

        • Al reutilizar un SLB, Kubernetes emplea los nombres de los listeners y de los grupos vServer como identificadores únicos. No modifique estos nombres.

        • No se admite la reutilización de un SLB entre distintos clústeres.

      Port Mapping

      Agregue los puertos del servicio y del contenedor. El puerto del contenedor debe coincidir con el puerto que exponen los pods del backend.

      External Traffic Policy

      • Local: enruta el tráfico únicamente a los pods del mismo nodo.

      • Cluster: enruta el tráfico a los pods de cualquier nodo.

      Nota

      La opción External Traffic Policy solo se puede establecer cuando el tipo de servicio es Server Load Balancer.

      Annotations

      Agregue una anotación para configurar los parámetros del SLB. Por ejemplo, al establecer service.beta.kubernetes.io/alicloud-loadbalancer-bandwidth: 20, se limita el ancho de banda del servicio a 20 Mbit/s para controlar el tráfico.

      Label

      Agregue una etiqueta para identificar este servicio.

    • Configure Ingress: haga clic en Create junto a Ingresses para establecer las reglas de enrutamiento de los pods del backend.

      Expand to view Ingress configuration details

      Nota

      Al crear una aplicación a partir de una imagen, solo puede crear un Ingress por servicio. Este ejemplo utiliza un nombre de host virtual como dominio de prueba. Agregue una asignación de dominios (endpoint de Ingress + dominio de Ingress) a su archivo Hosts. En producción, utilice un dominio con registro ICP.

      101.37.XX.XX   foo.bar.com    # Ingress IP.

      Parámetro

      Descripción

      Name

      Introduzca un nombre para el Ingress. En este ejemplo se utiliza alb-ingress.

      Rule

      Las reglas del Ingress definen cómo llega el tráfico entrante a los servicios del clúster. Para obtener más información, consulte ALB Ingress Quick Start.

      • Domain Name: introduzca el dominio del Ingress.

      • Path: especifique la ruta de la URL para acceder al servicio. De forma predeterminada, es la ruta raíz /. Cada ruta se asigna a un servicio de backend. Alibaba Cloud SLB reenvía el tráfico únicamente si las solicitudes entrantes coinciden tanto con el dominio como con la ruta.

      • Services: seleccione el nombre del servicio y el puerto.

      • TLS: configure el enrutamiento seguro.

      En este ejemplo se usa el dominio de prueba foo.bar.com y se establece el servicio en nginx-svc.

      Canary Release

      Habilite la versión canary. Se recomienda seleccionar Open Source Solution, ya que la edición de Alibaba Cloud dejó de recibir mantenimiento.

      Ingress Class

      Especifique una clase de Ingress personalizada.

      Annotations

      Defina claves y valores de anotaciones personalizados, o busque anotaciones por nombre. Haga clic en Add para introducir los pares clave-valor de las anotaciones. Para consultar las anotaciones del Ingress, visite Anotaciones.

      Label

      Haga clic en Add para introducir las claves y los valores de las etiquetas que identifican las características de este Ingress.

  2. (Opcional) En la sección Scaling, habilite HPA para atender las distintas demandas de carga.

    • Container Compute Service admite el escalado automático según el uso de CPU y memoria de los pods.

      Nota

      Para habilitar el escalado automático, debe especificar los recursos solicitados para el contenedor. De lo contrario, esta función no operará correctamente.

      Elemento de configuración

      Descripción

      Metric

      Admite CPU y memoria. Debe coincidir con el tipo de recurso solicitado.

      Trigger Condition

      El umbral del porcentaje de uso de recursos. Al superarse, el sistema escala horizontalmente.

      Max. Replicas

      El número máximo de contenedores que se pueden escalar horizontalmente para este tipo de carga.

      Min. Replicas

      El límite inferior para reducir la escala de esta carga de trabajo.

    • Container Compute Service también admite el escalado programado (CronHPA) para escalar automáticamente los clústeres de Kubernetes en momentos específicos. Antes de habilitar el escalado programado, instale el componente ack-kubernetes-cronhpa-controller. Para más información, consulte Scheduled scaling (CronHPA).

  1. (Opcional) En la sección Labels and Annotations, haga clic en Add para establecer las etiquetas y anotaciones del pod.

  2. Haga clic en Create.

Paso 4: Consultar la información de la aplicación

Una vez que se crea correctamente, el sistema lo redirige a la página de finalización. Haga clic en View Details para ir a la página de detalles del Deployment.

También puede consultar la información del Deployment en la página Deployments. Haga clic en el nombre del Deployment correspondiente o en Details, dentro de la columna Actions, para ir a la página de detalles de la aplicación.

Crear mediante YAML

En la orquestación de plantillas de ACS, usted define los objetos de recurso obligatorios para su aplicación. Después, los combina en una aplicación completa mediante mecanismos como los selectores de etiquetas.

Este ejemplo muestra cómo crear una aplicación Nginx con una plantilla de orquestación que contiene un Deployment y un Service. El Deployment crea los recursos de pod y el Service se vincula a esos pods para formar una aplicación Nginx completa.

  1. Inicie sesión en la consola de ACS. En el panel de navegación izquierdo, haga clic en Clusters.

  2. En la página Clusters, haga clic en el nombre del clúster de destino. En el panel de navegación izquierdo, elija Workloads > Deployments.

  3. En la página Deployments, haga clic en Create from YAML en la esquina superior derecha.

  4. En la Create página, configure la plantilla y haga clic en Create.

    • Sample Template: ACS proporciona ejemplos de YAML de Kubernetes para diversos tipos de recursos con el fin de agilizar el despliegue. También puede escribir su propio archivo YAML conforme a los estándares de Kubernetes.

    • Create Workload: Defina rápidamente una plantilla YAML mediante esta función.

    • Use Existing Template: Importe una plantilla de orquestación existente.

    • Save Template: Guarde la plantilla de orquestación que configuró.

    A continuación se muestra un ejemplo de YAML para una aplicación Nginx. Con este ejemplo se crea rápidamente un Deployment de Nginx y un servicio LoadBalancer de tipo CLB.

    Nota
    • ACS admite la orquestación con YAML de Kubernetes. Utilice el separador --- para definir varios objetos de recurso en una sola plantilla.

    • (Opcional) Al montar volúmenes mediante Volume, los archivos del directorio de montaje se sobrescriben de forma predeterminada. Para conservar los archivos existentes, configure el parámetro subPath.

    Expanda para consultar el YAML de Nginx

    apiVersion: apps/v1 
    kind: Deployment
    metadata:
        name: nginx-deployment-basic
        labels:
          app: nginx
    spec:
        replicas: 2
        selector:
          matchLabels:
            app: nginx
        template:
          metadata:
            labels:
              app: nginx
              alibabacloud.com/compute-class: general-purpose 
              alibabacloud.com/compute-qos: default
          spec:
            containers:
            - name: nginx
              image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest #replace it with your exactly <image_name:tags>
              ports:
              - containerPort: 80
              volumeMounts:
              - name: nginx-config
                mountPath: /etc/nginx/nginx.conf 
                subPath: nginx.conf   #set subPath.    
            volumes:
            - name: nginx-config
              configMap:
                name: nginx-conf
    ---
    apiVersion: v1     
    kind: Service
    metadata:
       name: my-service1        #to specify your service name
       labels:
         app: nginx
    spec:
       selector:
         app: nginx             #change label selector to match your backend pod
       ports:
       - protocol: TCP
         name: http
         port: 30080          
         targetPort: 80
       type: LoadBalancer       
    ---
    #ConfigMap for volume
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: nginx-conf
      namespace: default
    data:
      nginx.conf: |-
       user  nginx;
       worker_processes  1;
       error_log  /var/log/nginx/error.log warn;
       pid        /var/run/nginx.pid;
       events {
            worker_connections  1024;
        }
        http {
            include       /etc/nginx/mime.types;
            default_type  application/octet-stream;
            log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                              '$status $body_bytes_sent "$http_referer" '
                              '"$http_user_agent" "$http_x_forwarded_for"';
            access_log  /var/log/nginx/access.log  main;
            sendfile        on;
            #tcp_nopush     on;
            keepalive_timeout  65;
            #gzip  on;
            include /etc/nginx/conf.d/*.conf;
        } 
  5. Después de hacer clic en Create, se muestran los mensajes de estado del despliegue.

kubectl

Use los comandos de kubectl para crear y consultar aplicaciones.

  1. Conéctese a su clúster. Para más detalles, consulte Obtain cluster kubeconfig and connect using kubectl o Manage Kubernetes clusters using kubectl in CloudShell.

  2. Ejecute el siguiente comando para iniciar un contenedor (por ejemplo, un servidor web Nginx).

     kubectl create deployment nginx --image=registry.cn-hangzhou.aliyuncs.com/acs-sample/nginx:latest
  3. Ejecute el siguiente comando para crear un endpoint de servicio para el contenedor. Si especifica --type=LoadBalancer, se crea un SLB de Alibaba Cloud que enruta el tráfico al contenedor Nginx.

    kubectl expose deployment nginx --port=80 --target-port=80 --type=LoadBalancer
  4. Ejecute el siguiente comando para listar los contenedores nginx en ejecución.

    kubectl get pod |grep nginx

    Resultado esperado:

    NAME                                   READY     STATUS    RESTARTS   AGE
    nginx-2721357637-d****                 1/1       Running   1          9h