通过Node.js连接到远程Docker

 mobiledu2502926403 发布于 2022-12-23 10:32

我在我的一台服务器上设置并运行了Docker,可以像这样远程连接到它:

docker --tlsverify -H tcp://web2.webcom.dk:4243 images

我用这个和这个得到它成立.

我想做的是能够通过Node.js连接到它并尝试使用dockerode,这对我来说似乎是最好的选择.

这是我的代码:

Docker = require 'dockerode'

docker = new Docker
  host: 'tcp://web2.webcom.dk'
  port: 4243
  tls: true
  tlscacert: '/Users/jacob/.docker/ca.pem'
  tlscert: '/Users/jacob/.docker/cert.pem'
  tlskey: '/Users/jacob/.docker/key.pem'
  tlsverify: true

container = docker.getContainer '826544226fdc'
container.start (err, data) ->
  return console.error err if err?
  console.log data

但这不起作用,因为我收到此错误:

{ [Error: connect ECONNREFUSED]
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect' }

有任何想法吗?

UPDATE

这适用于本地:

Docker = require 'dockerode'

docker = new Docker
  host: '192.168.59.103'
  port: 2375
  socketPath: false

docker.run 'ubuntu', ['bash', '-c', 'uname -a'], process.stdout, (err, data, container) ->
  return console.error err if err?

但如果我使用我的远程主机IP和端口,我得到这个:

{ [Error: Parse Error] bytesParsed: 0, code: 'HPE_INVALID_CONSTANT' }

如何连接到我的远程主机?

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有