【问题标题】:How I can upgrade an new version of container in Openshift/Kubernetes如何在 Openshift/Kubernetes 中升级新版本的容器
【发布时间】:2018-06-18 13:55:58
【问题描述】:

我有一个 openshift 集群。 我存储在 gitlab 注册表中的 Docker 图像 我有一个问题,当我的 repo 中有新图像时,如何在 openshift 中升级我的应用程序?

例如,我部署了一个版本为 3.6 的 selenium 集线器:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  annotations:
    kompose.cmd: kompose convert -f docker-compose-debug.yml
    kompose.version: 1.6.0 (e4adfef)
  creationTimestamp: null
  labels:
    io.kompose.service: ds-hub
  name: ds-hub
spec:
  replicas: 1
  strategy: {}
  template:
    metadata:
      creationTimestamp: null
      labels:
        io.kompose.service: ds-hub
    spec:
      containers:
      - env:
        - name: GRID_CLEAN_UP_CYCLE
          value: "10000"
        - name: GRID_MAX_SESSION
          value: "10"
        - name: GRID_TIMEOUT
          value: "150"
        image: selenium/hub:3.6
        name: ds-hub
        ports:
        - containerPort: 4444
        resources: {}
        stdin: true
        tty: true
      restartPolicy: Always
status: {}

现在我想部署一个新版本,例如 3.7

我知道的唯一方法是更改​​ yaml 文件:

来自

image: selenium/hub:3.6

image: selenium/hub:3.7

并在控制台中用新版本替换 yaml 文件:

oc replace -f <yml_file_describing_pod>

也许这是一个更好的解决方案?或者也许 pod 可以自动升级?以及如何通过网络做到这一点?

【问题讨论】:

标签: docker kubernetes openshift openshift-origin


【解决方案1】:

您是否可以通过 kubectl 访问您的 k8s 集群?如果是,您可以为您的部署设置新映像并执行滚动更新:

kubectl set image deployment/ds-hub ds-hub=selenium/hub:3.7

【讨论】:

    【解决方案2】:

    对于自动更新,您可以将 ImageChange-trigger 添加到您的 Deployment-Config 并使用 selenium/hub:latest 作为 ImageStreamTag-name。

        triggers:
      - type: ImageChange
        imageChangeParams:
          automatic: true 
          from:
            kind: ImageStreamTag
            name: selenium/hub:latest
          containerNames:
            - ds-hub
    

    【讨论】:

    • 为不同的部署(例如测试、登台、产品...)使用自己的标签而不是使用最新的标签是有意义的。
    猜你喜欢
    • 2021-12-08
    • 2018-03-29
    • 2021-01-09
    • 2019-07-08
    • 1970-01-01
    • 1970-01-01
    • 2015-08-13
    • 2016-02-26
    • 2017-04-02
    相关资源
    最近更新 更多