日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

容器鏡像關聯

錄入服務模板時,若您需要使用已在計算巢發布的容器鏡像部署物,可以使用容器鏡像關聯的功能。

背景信息

使用容器鏡像關聯功能,您需要在服務模板中定義容器鏡像關聯的標識位和訪問憑證標識位,并在容器鏡像關聯中設置關聯的容器鏡像部署物,在創建服務實例時,計算巢會自動識別模板中標識位,自動替換成部署物對應的容器鏡像版本。

功能配置

  1. 在模板中定義容器鏡像關聯標識位和訪問計算巢鏡像倉庫的憑證標識位。

    在配置容器鏡像關聯功能前,需要先在模板中定義容器鏡像標識位和計算巢鏡像倉庫訪問憑證標識位。容器鏡像關聯標識位的固定表達式為:{{ computenest::acrimage::xxx }}

    說明

    表達式中的xxx為任意單詞,中間不可包含空格。

    此處以在ALIYUN::CS::ClusterApplication資源中定義容器鏡像標識位{{ computenest::acrimage::yourimage }}.dockerconfigjson格式的計算巢鏡像倉庫訪問憑證標識位為例,展示模板中容器鏡像關聯標識位和計算巢鏡像倉庫憑證標識位。

    Resources:
      ClusterApplication:
        Type: 'ALIYUN::CS::ClusterApplication'
        Properties:
          DefaultNamespace:
            Ref: 'ALIYUN::StackName'
          YamlContent: |
            apiVersion: v1
            data:
              .dockerconfigjson: {{ computenest::acr::dockerconfigjson }} 
            kind: Secret
            metadata:
              name: computenestrepo
              namespace: default
            type: kubernetes.io/dockerconfigjson
            ---
            apiVersion: apps/v1
            kind: Deployment
            metadata:
              labels:
                app: springboot-demo-deployment
              name: springboot-demo-deployment
            spec:
              selector:
                matchLabels:
                  app: springboot-demo-pod
              template:
                metadata:
                  labels:
                    app: springboot-demo-pod
                spec:
                  containers:
                    - name: springboot-demo-container
                      image: {{ computenest::acrimage::yourimage }} 
                      imagePullPolicy: Always
                      ports:
                        - containerPort: 8080
                          protocol: TCP
                      env:
                        - name: DB_HOST
                          value: mysql
                        - name: DB_USER
                          value: root
                        - name: DB_PASSWORD
                          value: Qwer1234
                  restartPolicy: Always
                  ...
  2. 配置容器鏡像關聯。

    1. 在創建服務界面的部署物關聯區域,單擊設置容器鏡像關聯

    2. 容器鏡像關聯彈窗中,選擇需要關聯的容器鏡像部署物和對應的版本。

      若您沒有容器鏡像部署物,需先創建容器鏡像部署物后再選擇。關于如何創建容器鏡像部署物,請參見創建部署物2024-04-10_17-07-07.png

    3. 單擊確定2024-04-10_17-09-47.png

功能展示

服務創建完成后,當用戶在創建服務實例時,計算巢會將模板中的內容根據部署物信息自動替換為鏡像地址。

  • 容器鏡像處替換如下:容器鏡像

  • 計算巢鏡像倉庫訪問憑證替換如下:訪問憑證

線下調試

若您想要對容器鏡像進行線下手動調試時,可以在有K8s集群操作權限的機器上,手動執行YAML文件進行容器鏡像的部署。

容器鏡像需要對應的secret才能Pull,所以進行線下手動調節時,需要先創建secret后再部署容器鏡像。

  • 創建secret

    創建secret前需要先登錄鏡像倉庫后,再到K8s集群創建secret。獲取登錄計算巢鏡像倉庫命令方式,請參見管理容器鏡像部署物

    示例如下:

    # 登錄計算巢服務鏡像倉庫,登錄命令和賬號密碼詳見創建容器部署物
    docker login compute-nest-registry.cn-hangzhou.cr.aliyuncs.com --username=cr_temp_user --password=eyJhdXRoVG9rZW5JZGVudGlmaWVyIjoiNTU5NGE3OTlkZWNlNGM0Njk4NDc4NTI3MWY2MWYxODQiLCJpbnBN0YW5jZlkIjoiY3JpLWNuZ21qdnRnb3J4Ym9meXAiLCJ0aW1lIjoiMTY5MDQ1NzM5NDAwMCIsInR5cGUiOiJzdHiLCJ1c2VySWQiOiIMTE5ODIxMTU2ODkzODgyIn0:322290403cf9a2b40a7086d4f01edd4603xxxxxx
    
    # 在k8s集群中創建secret,名稱為<secretName>,可以自定義,<path/to/.docker/config.json>為執行操作的機器上,安裝docker時對應的config.json的位置。
    kubectl create secret generic <secretName> \
        --from-file=.dockerconfigjson=<path/to/.docker/config.json> \
        --type=kubernetes.io/dockerconfigjson
  • 部署容器鏡像

    部署容器鏡像時,YAML文件中的<imageName>為上傳到計算巢容器倉庫中的倉庫名稱和版本,<secretName>為創建secret時生成的secret名稱。

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: nginx
      labels:
        app: nginx
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: nginx
      template:
        metadata:
          labels:
            app: nginx
        spec:
          containers:
          - name: nginx
            image: <imageName>
            ports:
            - containerPort: 80
          imagePullSecrets:
          - name: <secretName>