我正在尝试使用Jenkins在Kubernetes中部署下一个frontend-deployment.yaml,但是出现下一个错误:
[frontend] Running shell script + kubectl apply -f IKonnekt/frontend-deployment.yaml error: unable to recognize "IKonnekt/frontend-deployment.yaml": no matches for kind "Deployment" in version "extensions/v1beta1"
如果我kubectl apply -f IKonnekt/frontend- deployment.yaml从Kubernetes集群中的机器上运行,则可以正常工作。
kubectl apply -f IKonnekt/frontend- deployment.yaml
Kubernetes Client Version: 1.12.1 Kubernetes Server Version: 1.11.0
这是我的frontend-deployment.yaml:
apiVersion: extensions/v1beta1 kind: Deployment metadata: name: ikonnekt-frontend-deployment spec: replicas: 1 template: metadata: labels: app: ikonnekt-frontend spec: containers: - name: ikonnekt-frontend image: ikonnektfrontend imagePullPolicy: Always env: - name: REACT_APP_API value: "http://IP:Port" - name: REACT_APP_AUTH_ENDPOINT value: "http://IP:Port/auth" ports: - containerPort: 80 imagePullSecrets: - name: regcred
我的问题是因为在Jenkinsfile中,我使用的是Kubernetes仪表板URL而不是Kubernetes API URL,因此Jenkins的kubectl无法识别kubernetes服务器。
因此,最后,使用API URL并更新apiVersion对我有用。