2016-04-14 50 views
0

描述問題幷包括以下信息:帕克碼頭工人的建設者,不接受-v富:/條

Packer Version - 0.9.0 
Host platform - Centos 7.2 

我想提供一個碼頭工人的容器,和我需要的容器有/ lib目錄/模塊安裝到容器中的/ lib /模塊。奇怪的是,當我運行Packer說它正在運行的docker run命令時,我能夠啓動容器並執行我需要的操作。

我泊塢窗命令的作品 - 關於這

{ "builders": [{ "type": "docker", "image": "my-img", "pull": false, "export_path": "docker-march.tar", "run_command": [ "--privileged", "-d", "-i", "-t", "--net=host", "-v /lib/modules:/lib/modules", "{{.Image}}", "/bin/sh" ] }], 

和錯誤 ==>泊塢窗模板

docker run --privileged -t -i --net=host -v /lib/modules:/lib/modules 9a8c6ee5e82a /bin/bash -c 'sudo /sbin/service iptables restart' 

部分:錯誤運行容器:碼頭工人退出,非零退出狀態。 ==>泊塢窗:標準錯誤:標誌提供,但沒有定義:-v/lib/modules目錄:/ lib/modules目錄

這就是它說,它運行

docker: Run command: docker run -v /home/my-user/.packer.d/tmp/packer-docker780723700:/packer-files --privileged -d -i -t --net=host -v /lib/modules:/lib/modules top-rhel6-base /bin/sh 

,當我手動運行,有效。

回答

0

所以我想出瞭解決方案。 Packer希望參數'-v'在它自己的一組引用中,然後想要在另一行上傳遞給-v。因此,例如,這是爲我工作

run_command": [ "--privileged", "-d", "-i", "-t", "--net=host", "-v", " /lib/modules:/lib/modules", "{{.Image}}", "/bin/sh" ] 

這裏是我做的有沒有工作

run_command": [ "--privileged", "-d", "-i", "-t", "--net=host", "-v /lib/modules:/lib/modules", "{{.Image}}", "/bin/sh" ] 

如果這不是在文檔中(我沒看出來,但這並不意味着它不存在),它可能應該是?