Hashicorp Packer不能在Windows主机上执行packer-provisioner-shell

时间:2015-12-28 01:11:36

标签: windows packer

这是我的第一个问题。我试图遵循所有准则。

我正在尝试使用Packer来创建Debian 8的Vagrant图像。如果我只使用"构建器运行一个打包器构建"模板将成功执行,并将生成Virtualbox图像。当我试图添加"配置者"和/或"后处理器"模板,我开始出错了。错误发生在大约10秒钟内。它不会运行构建器。错误消息是:

book = only(:id).find_by(:title => book_title.downcase.strip)
return unless book
book.id

# or, if ActiveSupport is around, just this:
only(:id).find_by(:title => book_title.downcase.strip).try(:id)

我已经在这几天了。我有:

  • 在Google上搜索错误文字
  • 阅读一些Packer来源(我认为我不熟悉Go)
  • 从Packer.io
  • 重新下载了Packer
  • 确保文件已解除阻止
  • 作为我的默认用户和管理员执行
  • 使用Git Bash代替cmd.exe
  • 从Powershell执行
  • 使用Atlas提供的atlas-packer-vagrant-tutorial。它将建立在Atlas上,但不是在本地。

我的包装工模板文件:

ui error: Failed to initialize build 'virtualbox-iso': error initializing provisioner 'shell': dial tcp 127.0.0.1:10000: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.

我没有足够的声誉来添加其他链接。 TCP视图输出:

{
    "provisioners": [{
        "type": "shell",
        "scripts": [
            "scripts/vagrant.sh"
        ],
        "override": {
            "virtualbox-iso": {
                "execute_command": "echo 'vagrant' | sudo -S bash '{{.Path}}'"
            }
        }
    }],
    "builders": [{
        "type": "virtualbox-iso",
        "guest_os_type": "Debian_64",
        "iso_url": "http://cdimage.debian.org/debian-cd/8.2.0/amd64/iso-cd/debian-8.2.0-amd64-CD-1.iso",
        "iso_checksum": "234bd43d85974299d501f370ac3e7592b98832d98f82be3aff190ff3af831f8cd7574a75f4c9b36c347f138e82ccb40ff3746a4c94e7d59e4ee711e0c96dbf1d",
        "iso_checksum_type": "sha512",
        "ssh_username": "vagrant",
        "ssh_password": "vagrant",
        "ssh_wait_timeout": "120m",
        "shutdown_command": "echo 'vagrant' | sudo -S shutdown -h now",
        "disk_size": "20480",
        "http_directory": "http",
        "boot_command": [
            "<esc><wait>",
            "auto url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed.cfg ",
            "<enter>"
        ],
        "vboxmanage": [
            ["modifyvm", "{{.Name}}", "--memory", "4096"],
            ["modifyvm", "{{.Name}}", "--cpus", "2"]
        ]
    }],
    "post-processors": ["vagrant"]
}

系统信息:

  • Windows 7 Pro SP1(64位)
  • Packer 0.8.6

我的完整代码在Github上repo

我的完整错误登录此Gist

感谢您提供的任何帮助。

2 个答案:

答案 0 :(得分:0)

我在Windows主机上遇到了与packer有点类似的问题,但我可以正确构建(在vagrant中配置错误都是一样的)。

但您可以使用或比较另一个项目打包器,它可以为您的项目正确运行。也许找到解决或理解其他概念的方法可以帮助您:packer ubuntu project

答案 1 :(得分:0)

正如Gregory Nisbet所指出的,这是一个防火墙问题。我停止了所有McAfee服务,我能够继续。