6

每当我尝试 Vagrant Up 时,它都会加载盒子并正确完成大部分工作,但是因为我正在尝试使用 Puppet 来配置这个 CentOS 6.3,所以我需要 SSH 在 Vagrant Up 期间工作(如果我希望它尽可能自主) .

我从 Vagrant 的 INFO 日志中得到以下信息:

DEBUG virtualbox_4_2:   - [1, "ssh", 2222, 22]
 INFO ssh: Connecting to SSH: 127.0.0.1:2222
 INFO ssh: SSH not up: #<Timeout::Error: execution expired>
 INFO subprocess: Starting process: ["C:\\Program Files\\Oracle\\VirtualBox\\VBoxManage.exe", "showvminfo", "c2e7375d-159f-4014-9bda-ff9914423f4c", "--machinereadable"]
DEBUG subprocess: Selecting on IO
DEBUG subprocess: stdout: name="Vagrant-Apache-Nick_1360372174"
4

2 回答 2

10

Vagrant Up您的 Windows 系统尝试连接到 SSH 期间。如果您在命令行中键入:

set VAGRANT_LOG=INFO

您可能会看到它失败并尝试几次。它看起来像这样:

INFO ssh: Connecting to SSH: 127.0.0.1:2222

发生这种情况是因为超时设置为 10。这可以通过在 Vagrantfile 中放置以下内容来修改:

config.ssh.timeout = 300

您可以使用任何您喜欢的数字,但我建议您使用 100 以上的数字。

资料来源:

  1. 这家伙有一些有用的故障排除信息。
  2. Vagrantfiles 的 Vagrant 文档
  3. Vagrantfile SSH 超时的 Vagrant 文档
  4. 用于调试的 Vagrant Docs
  5. 故障排除时间(保持微笑)
于 2013-02-09T01:16:45.157 回答
1

我知道我写这篇文章已经很晚了,但是在我简单地从 Windows 中删除 Hyper-V 并神奇地解决了我的问题之前,我确实有一整天几乎完全相同的问题。

我想当我使用 Docker for Windows 进行测试时(不要与 docker-machine 混淆)它以某种方式弄乱了我的 Hyper-V。不是 100% 确定为什么这个调整解决了这个问题,但是在 Docker for Windows 似乎对我的 VirtualBox 感到厌烦之后它就像一个魅力(Docker for Windows 和 Local by FlyWheel / VirtualBox 相互冲突)。

在此处输入图像描述

希望这可以帮助某人!

于 2019-01-08T20:49:34.523 回答