如何通过 node.js 客户端库连接到 gcloud 虚拟机

How to ssh to a gcloud virtual machine through node.js client library

我有一个名为 cloudvm 的 Google 云虚拟机和一个 Node.js 脚本来联系该虚拟机。我想取 shell 并执行

echo "this is fun" > a.txt

命令在 Node.js 中使用 ssh 客户端。我已尝试 node-ssh 使用用户 ID、密码和私钥,但出现以下错误;

Message: All configured authentication methods failed

我用过

   const {NodeSSH} = require('node-ssh')

const ssh = new NodeSSH()

ssh.connect({
  host: 'localhost',
  username: 'steel',
  privateKey: '/home/steel/.ssh/id_rsa'
})

我的最终目标是使用 Node.js 环境将值传递给 Google 云虚拟机内的文件。有什么想法吗?

创建后

OS user and password

在google计算引擎中,您可以通过node JS中的node-ssh库连接它。

const { NodeSSH } = require("node-ssh");
const ssh = new NodeSSH();
var session = await ssh.connect({
      host: "xxx.xxx.x.xx",
      username: "xxxxxx",
      password: "xxxx",
    });
    var cmde = 'your/command to execute';
    var ot = await session.execCommand(cmde);