尝试创建 dicom 商店时 Google 医疗保健中的错误

问题描述

我留下链接作为指南https://cloud.google.com/healthcare/docs/how-tos/dicom-connect-pacs#creating_a_dicom_store

使用 Google Kubernetes Engine 部署适配器

我的清单文件

apiVersion: extensions/v1beta1
kind: Deployment
Metadata:
  name: dicom-adapter
spec:
  replicas: 1
  template:
    Metadata:
      labels:
        app: dicom-adapter
    spec:
      containers:
        - name: dicom-import-adapter
          image: gcr.io/cloud-healthcare-containers/healthcare-api-dicom-dicomweb-adapter-import:0.2.1
          ports:
            - containerPort: 2575
              protocol: TCP
              name: "port"
          args:
            - "--dimse_aet=IMPORTADAPTER"
            - "--dimse_port=2575"
            - "--dicomweb_address=https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb" `

在控制台

$kubectl apply -f dicom_adapter.yaml
error: unable to recognize "dicom_adapter.yaml": no matches for kind "Deployment" in version "extensions/v1beta"

解决方法

在您的 yaml 文件中,将 [ApiVersion("1.0")] [Route("api/v{version:apiVersion}/[controller]")] [Authorize] [ApiController] [EnableCors("CorsPolicy")] public abstract class BaseApiController : ControllerBase apiVersion 更改为 extensions/v1beta1

官方doc

部署在 extensions/v1beta1apps/v1beta1apps/v1beta2 不再提供 API 版本

  • 迁移到使用 apps/v1 API 版本,从 v1.9 开始可用。现有的持久数据可以通过新的 版本。

在新版本的 Kubernetes 中有变化:

  • 创建集群(GKE 中不再提供 1.15 版本的 k8s 集群)
  • 配置部署:从 k8s 集群 1.16 版本开始 - apiVersion:extensions/v1beta1 不再可用迁移到使用 apps/v1 API 版本,从 v1.9 开始可用。
    见文档:api-deprecations-in-1-16/

这里提出了这个问题: https://issuetracker.google.com/issues/185205137

同样在您的 apps/v1 配置中的 spec 部分下,您必须将 deployment 字段与 selector 部分一起使用。在您的情况下,部分部署应如下所示:

matchLabels

apiVersion: extensions/v1beta1 kind: Deployment metadata: name: dicom-adapter spec: replicas: 1 template: metadata: labels: app: dicom-adapter spec: selector: matchLabels: app: dicom-adapter 告诉资源,无论它是什么,服务,部署等,根据该标签匹配 pod。

查看官方文档 - kubernetes-object-labels-selectors

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...