Node.js 如何使用NodeJS在GCP中已经创建/存在的VM中运行bash脚本?

Node.js 如何使用NodeJS在GCP中已经创建/存在的VM中运行bash脚本?,node.js,google-cloud-platform,google-compute-engine,Node.js,Google Cloud Platform,Google Compute Engine,我已经使用NodeJS和Npm模块浏览、记录并使用示例代码创建了一个新的VM并列出了现有的VM 现在我想连接到我现有的虚拟机,运行一个小bash脚本来调用一些命令,主要是gitclone或curl来运行虚拟机中的文件 我在@googlecloud/compute中找不到连接现有虚拟机并执行某些操作的方法 我们有这样的方法吗 是否可以使用Nodejs以其他方式执行此操作?我想到了两种不同的方法: 您可以将公钥添加到实例中,然后使用节点ssh库() 在创建实例时为其设置一个。这可以通过将create

我已经使用NodeJS和Npm模块浏览、记录并使用示例代码创建了一个新的VM并列出了现有的VM

现在我想连接到我现有的虚拟机,运行一个小bash脚本来调用一些命令,主要是
gitclone
curl
来运行虚拟机中的文件

我在
@googlecloud/compute
中找不到连接现有虚拟机并执行某些操作的方法

我们有这样的方法吗


是否可以使用Nodejs以其他方式执行此操作?

我想到了两种不同的方法:

  • 您可以将公钥添加到实例中,然后使用节点
    ssh
    库()

  • 在创建实例时为其设置一个。这可以通过将
    createVM
    的第二个参数(config)设置为如下值来实现:


  • 谢谢,通过Nodejs的SSH正在工作。我正在以新用户身份连接到VM。假设虚拟机已经在运行Kubernetes服务器,新用户是否能够通过admin(sudo)命令访问/更改它?或者他/她是否需要再次设置路径/配置并运行服务器?请详细说明Kubernetes服务器的含义?您应该避免在GKE的托管实例上安装任何东西。如果您通过用户安装了Minikube或任何其他服务,您还应该能够使用本地配置连接到该服务。否则,是的,kubeconfigs存储在主路径中,因此如果使用其他用户进行身份验证,则需要再次进行身份验证
    {
      os: 'ubunntu',
      metadata: {
        'startup-script': 'your commands'
      } 
    }