Docker 创建“时出错”;STDIN";:运行skaffold dev时发生内部错误
所以,我在ubuntu中使用minikube v1.19.0,在kubernetes中使用nginx ingress。我有两个节点文件:auth和client,分别创建了docker映像 我得到了4个kubernetes cinfig文件,如下所示: auth-deply.yaml: apiVersion:apps/v1 种类:部署 元数据: 姓名:auth depl 规格: 副本:1份 选择器: 火柴标签: app:auth 模板: 元数据: 标签: app:auth 规格: 容器: -姓名:auth 图像:xyz/auth 环境: -姓名:JWT_KEY 价值来源: secretKeyRef: 姓名:jwt机密 钥匙:JWT_钥匙 --- 版本:v1 种类:服务 元数据: 名称:auth srv 规格: 选择器: app:auth 端口: -姓名:auth 协议:TCP 港口:3000 目标港:3000 auth-moongo-depl.yaml: apiVersion:apps/v1 种类:部署 元数据: 姓名:auth mongo depl 规格: 选择器: 火柴标签: 应用程序:auth mongo 模板: 元数据: 标签: 应用程序:auth mongo 规格: 容器: -姓名:auth mongo 图片:mongo --- 版本:v1 种类:服务 元数据: 名称:auth mongo srv 规格: 选择器: 应用程序:auth mongo 端口: -姓名:db 协议:TCP 港口:27017 目标港:27017 客户-depl.yaml: apiVersion:apps/v1 种类:部署 元数据: 姓名:客户部 规格: 副本:1份 选择器: 火柴标签: 应用程序:客户端 模板: 元数据: 标签: 应用程序:客户端 规格: 容器: -姓名:客户 图像:xyz/客户端 --- 版本:v1 种类:服务 元数据: 名称:客户srv 规格: 选择器: 应用程序:客户端 端口: -姓名:客户 协议:TCP 港口:3000 目标港:3000 ingress-srv.yaml:Docker 创建“时出错”;STDIN";:运行skaffold dev时发生内部错误,docker,kubernetes,minikube,nginx-ingress,skaffold,Docker,Kubernetes,Minikube,Nginx Ingress,Skaffold,所以,我在ubuntu中使用minikube v1.19.0,在kubernetes中使用nginx ingress。我有两个节点文件:auth和client,分别创建了docker映像 我得到了4个kubernetes cinfig文件,如下所示: auth-deply.yaml: apiVersion:apps/v1 种类:部署 元数据: 姓名:auth depl 规格: 副本:1份 选择器: 火柴标签: app:auth 模板: 元数据: 标签: app:auth 规格: 容器: -姓名:
apiVersion:extensions/v1beta1
种类:入口
元数据:
名称:入口服务
注释:
kubernetes.io/ingres.class:nginx
nginx.ingres.kubernetes.io/use-regex:'true'
规格:
规则:
-主持人:ticketing.dev
http:
路径:
-路径:/api/users/?(*)
后端:
服务名称:auth srv
服务端口:3000
-路径:/?(*)
后端:
服务名称:客户端srv
服务端口:3000
skaffold.yaml:
apiVersion:skaffold/v2alpha3
种类:配置
部署:
库贝特尔:
舱单:
-/次/k8s/*
建造:
本地:
推送:错误
人工产品:
-图像:xyz/auth
上下文:auth
码头工人:
dockerfile:dockerfile
同步:
手册:
-src:'src/***.ts'
目的地:。
-图像:xyz/客户端
上下文:客户端
码头工人:
dockerfile:dockerfile
同步:
手册:
-src:“***.js”
目的地:。
现在,当我运行skaffolddev
时,出现以下错误:
正在列出要监视的文件。。。
-xyz/auth
-xyz/客户端
正在生成标记。。。
-xyz/auth->xyz/auth:abcb6e4
-xyz/客户端->xyz/客户端:abcb6e4
正在检查缓存。。。
-xyz/auth:在本地找到
-xyz/客户端:在本地找到
开始测试。。。
部署中使用的标记:
-xyz/auth->xyz/auth:370487D5C013606178E602B3548DDBA9DB75106B22A1AF238E02ED950EC3F21
-xyz/客户->xyz/客户:a56ea90769d6f31e983a42e1c52275b8ea2480cb8905bf19b08738e0c34eafd3
正在开始部署。。。
-已配置deployment.apps/auth-depl
-已配置服务/身份验证srv
-deployment.apps/auth-mongo-depl已配置
-已配置服务/验证mongo srv
-已配置deployment.apps/client-depl
-已配置服务/客户端srv
-警告:扩展/v1beta1入口在v1.14+中不推荐使用,在v1.22+中不可用;使用networking.k8s.io/v1入口
-服务器错误(InternalError):创建“STDIN”时出错:发生内部错误:调用webhook“validate.nginx.ingres.kubernetes.io”失败:服务器上的错误(“”)阻止了请求成功
由于第一次部署失败而退出开发模式:kubectl应用:退出状态1
实际上,在我重新安装minikube并遇到这个问题之前,一切都很好。
这里需要一些帮助。您的日志清楚地表明入口版本警告存在问题 警告:扩展/v1beta1入口在v1.14+中不推荐使用, 在v1.22+中不可用;使用networking.k8s.io/v1入口 您的群集版本可能高于1.14+ 它可能是一个可能的版本,你的minikube得到更新 最新入口示例
apiVersion: "networking.k8s.io/v1beta1"
kind: "Ingress"
metadata:
name: "example-ingress"
spec:
ingressClassName: "external-lb"
rules:
- host: "*.example.com"
http:
paths:
- path: "/example"
pathType: "Prefix"
backend:
serviceName: "example-service"
servicePort: 80
lastet ingressapiversion是:networking.k8s.io/v1beta1
您可以检查lubernetes群集的版本,并验证支持哪个API群集
要检查Kubernetes支持的API版本,请执行以下操作:
kubectl api-versions
事实上,我刚刚发现问题是在重新安装minikube时,验证Webhook没有被删除,因此,应该使用以下命令删除创建的问题
kubectl delete-A validatingwebhook配置入口nginx准入
我发现在重新安装时,我忘了删除这个webhook,它安装在导致这个问题的清单中
与此问题相关的其他链接:
minikube版本已更改?请使用
kubectl get ingress
检查ingress版本,并检查Kubernetes群集的版本以及支持的API群集。感谢bro的帮助,但问题出在webhook中,我稍后将其修复。顺便说一句,非常感谢您提供有关kubernetes api版本的知识