问题标签 [docker-machine]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1385 浏览

linux - 如何在 docker-machine 中持久化对 boot2docker 的更改?

我正在使用 docker-machine 来管理运行 boot2docker 并使用 virtualbox 作为驱动程序的 VM。我需要将目录挂载到这个虚拟机。我可以通过在 Virtualbox Manager 的 VM 设置中将文件夹添加到共享文件夹列表中来做到这一点。然后使用sudo mount -t vboxsf -o uid=1000,gid=50 <name of folder in VM settings> <folder name>. 它起作用了,我添加了创建目录和挂载的命令,而不使用etc/rc.local. 当我重新启动 VM 时,我对 VM 所做的更改不会持续存在。我该怎么办?

我正在开发 Ubuntu 14.04。

0 投票
2 回答
4196 浏览

docker - 没有 TLS 验证的 docker-machine

我正在使用 docker-machine v0.3.0-RC-1 并且我需要在没有 TLS 验证的情况下在 virtualbox 上创建一个主机,但我不知道是否可以这样做?有谁知道一种简单的方法来做到这一点?

0 投票
3 回答
8483 浏览

docker - docker-machine 无需 tls 验证即可创建节点

当我创建一个节点时当我使用docker-machine

它是在为 docker deamon 启用 tls 验证的情况下创建的,这使得 swarm 比正常情况更麻烦。

我想创建一个节点docker-machine创建一个没有 tls 验证的节点来进行测试。

我试过:

0 投票
3 回答
6404 浏览

bash - 如何以编程方式检查 docker 机器是否存在?

docker-machine用来管理我的云服务器。我正在编写一些 bash 脚本来自动化一些任务。问题是:“如果具有特定名称的 docker 机器已经存在,如何检查 bash 脚本?”。如果存在,我需要一些表达式来返回 true,如果不存在,则返回 false。

谢谢

0 投票
2 回答
2007 浏览

docker - 动态添加和删除指向 docker 容器的链接

我正在运行一个烧瓶应用程序并使用 Openldap 作为服务器。我需要在运行烧瓶应用程序容器中添加和删除链接到 openldap 容器。基本上,我在运行时在烧瓶应用程序容器中给出了 openldap 的链接。现在我想随意添加和删除openldap容器并将它们链接到flask应用程序容器而不重新启动它。

我在 Ubuntu 14.04 上使用 docker-machine 在 boot2docker 上运行容器。

0 投票
0 回答
457 浏览

ssh - 如何使用 docker-machine 证书?

我开始学习 docker-machine 并且不确定如何处理发出 docker-machine create 时生成的密钥/证书:

  • id_rsa
  • id_rsa.pub
  • 用户数据.tar

docker-machine 如何使用这些密钥/证书,我应该如何使用它们?我可以将它们提交到 repo 以便我项目中的其他人可以控制远程 docker-machine 吗?

另一个让我感到困惑的行为是:

如果我移除远程机器并创建第二台机器,docker-machine 会要求我输入密码:

INFO[0000] 正在生成 SSH 密钥对...
INFO[0000] 正在上传 Boot2docker ISO ...
INFO[0000] 正在上传 /home/username/.docker/machine/cache/boot2docker-1.5.0-GH747.iso 到 boot2docker-iso on datastore Local Datastore of vCenter 123.456.789.012...
INFO[0006] 创建 vCenter 123.456.789.012
的虚拟机 MyMachineName... INFO[0011] 配置虚拟机 MyMachineName...
INFO[0016] 打开虚拟机 MyMachineName 的电源vCenter 123.456.789.012...
docker@123.456.789.013 的密码:

但是一旦我删除了 id_rsa、id_rsa.pub 和 userdata.tar,docker-machine 就可以很好地创建机器,而无需询问密码。

我尝试阅读文档,发现的唯一信息是可以使用 docker-machine regenerate-certs 重新生成密钥/证书。

我很确定我只是缺少某种基本的常识,这就是为什么没有任何关于它的记录的原因。

谢谢!

这似乎触及了同样的问题,但阅读后事情仍然不是很清楚:

从多台开发机器管理远程 docker 机器

0 投票
0 回答
171 浏览

ssh - 如何使用 docker-machine 运行多个 boot2docker?

我在 Ubuntu 14.04 上使用 docker-machine。我有一个运行 boot2docker 的虚拟机,通过以下命令创建

我正在尝试通过以下方式创建另一个 VM

它运行,发出信息

然后

等待密码。

我尝试了密码tcuser(在 github 上的 #405 上看到它)无济于事。

对于 VM 开发:Boot2Docker 版本 1.6.2,构建主机:4534e65

0 投票
0 回答
144 浏览

node.js - Docker 机器/Docker 链接在 Digital Ocean 上返回不同的容器 IP

我使用 Docker 机器在 DigitalOcean 上创建了一个 Droplet。

当运行两个容器并从 Jenkins 以这种方式链接它们时:

然后docker inspect container1 | grep "IPAddress"我得到172.17.0.51. 但是,当我在 container2 中运行 Node.js 应用程序时, process.env.CONTAINER1_PORT_5000_TCP_ADDR它会解析为 172.17.0.7:5000当我从其公共 IP(DO 液滴的)调用 container2 时导致返回No route to host.

当我exec进入 container2 并运行node process.env.CONTAINER1_PORT_5000_TCP_ADDR它时,它会返回172.17.0.51.

如果我使用另一个用户 ssh 进入主机,docker inspect container2 | grep "IPAddress"也会返回172.17.0.52而不是172.17.0.51.

为什么 Node.js 应用程序返回错误的 IP 地址,而在命令行上运行 Node.js 返回不同的正确 IP 地址?

更新:如果我在没有 docker-machine 和 DO 的情况下在 Jenkins 机器上本地运行容器,一切正常。

0 投票
3 回答
1317 浏览

docker - 由于“无法读取 CA 证书”错误,docker-machine 安装失败

我正在尝试docker-machine在我的 Windows 机器上进行本地设置,并按照Docker Machine Page上的安装说明进行操作。

根据说明,我在 bash 终端中运行了以下命令

安装 Docker 客户端二进制文件

$curl -L https://github.com/docker/machine/releases/download/v0.3.0/docker-machine_windows-amd64.exe > /bin/docker-machine

并安装 Docker 机器二进制文件

$ curl -L https://github.com/docker/machine/releases/download/v0.3.0/docker-machine_windows-amd64.exe > /bin/docker-machine

当我尝试运行时docker-machine -v,出现以下错误

FATAL[0000] Couldn't read ca cert 'C:\Users\Me\.boot2docker\certs\boot2doker-vm\ca.pm: open 'C:\Users\Me\.boot2docker\certs\boot2docker-vm'\ca.pem: The filename, directory name, or volume label syntax is incorrect.

我进行了一些搜索并遇到了一些帖子,但实际上看不到与导致我的问题的原因有任何联系...

https://github.com/hypriot/kitematic/pull/1

https://github.com/docker/machine/issues/908

0 投票
1 回答
2555 浏览

docker - 调试 docker swarm 的可能性有哪些?

我正在尝试使用 docker swarm 引擎并遵循官方文档创建容器集群:https ://docs.docker.com/swarm/install-w-machine/ 。但遗憾的是直到现在都没有成功。

在文档获取有关 swarm 的信息的步骤中,只显示了两个容器(来自 swarm-master 的容器)而不是四个。这是我得到的输出:

当前的 docker 机器有:

是否有可能调试 swarm 机器以找到最终的错误配置?