是否可以在 vscode 中使用云代码扩展在非 GKE 集群上部署 kubernetes pod?

时间:2021-02-09 12:00:37

标签: kubernetes visual-studio-code google-cloud-code

这是我在这里的第一篇文章,请寻求一些建议。

我正在学习 Kubernetes 并尝试获取云代码扩展以在非 GKE 集群上部署 Kubernetes 清单。留言板应用可以使用云代码扩展部署到本地 K8 集群(如 MiniKube 或 Docker-for-Desktop)。

我还有另外两个 K8 集群,如下所示,我无法通过云代码部署清单。我不完全确定这是否应该有效,因为我找不到任何关于此的文档或帖子。 GCP 免费试用期结束后,我想通过云代码将我的测试应用部署在我们本地的本地 K8 集群上。

  1. 在 CentOS 虚拟机上运行的 3 节点集群(使用 kubeadm 构建)
  2. 在 Ubuntu 机器上运行的 GCP 上的 6 节点集群(免费试用并使用 Hightower 方式构建)

Skaffold 安装在 MAC 本地,我的本地 $HOME/.kube/config 有上下文和用户设置为访问所有 3 个集群。 ➜

guestbook-1 kubectl config get-contexts
CURRENT   NAME                          CLUSTER                   AUTHINFO           NAMESPACE
          docker-desktop                docker-desktop            docker-desktop
*         kubernetes-admin@kubernetes   kubernetes                kubernetes-admin
          kubernetes-the-hard-way       kubernetes-the-hard-way   admin

错误:

 Running: skaffold dev -v info --port-forward --rpc-http-port 57337 --filename /Users/testuser/Desktop/Cloud-Code-Builds/guestbook-1/skaffold.yaml -p cloudbuild --default-repo gcr.io/gcptrial-project
starting gRPC server on port 50051
starting gRPC HTTP server on port 57337
Skaffold &{Version:v1.19.0 ConfigVersion:skaffold/v2beta11 GitVersion: GitCommit:63949e28f40deed44c8f3c793b332191f2ef94e4 GitTreeState:dirty BuildDate:2021-01-28T17:29:26Z GoVersion:go1.14.2 Compiler:gc Platform:darwin/amd64}
applying profile: cloudbuild
no values found in profile for field TagPolicy, using original config values
Using kubectl context: kubernetes-admin@kubernetes
Loaded Skaffold defaults from \"/Users/testuser/.skaffold/config\"
Listing files to watch...
 - python-guestbook-backend
watching files for artifact "python-guestbook-backend": listing files: unable to evaluate build args: reading dockerfile: open /Users/adminuser/Desktop/Cloud-Code-Builds/src/backend/Dockerfile: no such file or directory
Exited with code 1.
skaffold config file skaffold.yaml not found - check your current working directory, or try running `skaffold init`

我在路径中有 docker 和 skaffold 文件,如图所示,并且已经在 vscode 中对 google SDK 进行了身份验证。有什么帮助吗?!

enter image description here

1 个答案:

答案 0 :(得分:1)

我最终能够完成这项工作。在这种特殊情况下有帮助的是删除 skaffold.yaml,然后 skaffold init 生成新的 skaffold.yaml。然后,Cloud Code 能够在两个远程集群上部署 pod。感谢您的帮助。

相关问题