【发布时间】:2015-11-10 03:49:48
【问题描述】:
我正在尝试使用 kitchen-docker 开始测试。
kitchen-docker gem 已经通过 bundler 安装了。
.kitchen.yml 是这样的
---
driver:
name: docker
network:
- ["private_network", { ip: "192.168.33.10" }]
provisioner:
name: chef_solo
platforms:
- name: ubuntu-14.04
suites:
- name: default
run_list:
- recipe[homepage-test::default]
attributes:
"bundle exec kitchen test" 命令最终出现以下错误
-----> Starting Kitchen (v1.4.2)
-----> Creating <default-ubuntu-1204>...
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: Failed to complete #create action: [undefined method `create' for Tempfile:Class]
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration
我猜这不起作用,因为它无法创建实例,但我不知道如何解决这个问题。
################### 已更新#####################
github上有问题https://github.com/portertech/kitchen-docker/issues/148
这正是我以前遇到的一些错误。 然后我用 rbenv 将 ruby 2.0.0 更新到 2.2.3(最新的稳定版本)。
又出现了一个错误,
我仍然卡住并且仍然困惑为什么这不起作用,所以我检查了日志文件并出现了这样的错误消息
STDERR: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.20/build?cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile-kitchen-20151030-31260-10xmvl2&memory=0&memswap=0&rm=1&t=&ulimits=null: dial unix /var/run/docker.sock: connect: no such file or directory.
* Are you trying to connect to a TLS-enabled daemon without TLS?
* Is your docker daemon up and running?
【问题讨论】:
-
关于这些推荐结果的任何细节? " >>>>>> 请参阅 .kitchen/logs/kitchen.log 了解更多详情 >>>>>> 也可以尝试运行
kitchen diagnose --all进行配置"。我们无法进行占卜并神奇地猜测您的安装出了什么问题 -
@Tensibai 感谢您的建议,我刚刚更新了。
-
更新你的 chef-dk 版本,避免使用 rbenv/rvm 来运行 chef,这只是一个痛苦。
-
哦,我没有在这个项目中使用 chef-dk,因为我只是被要求测试一些食谱,所以我应该用不使用 rbenv/rvm 的自制软件更新 ruby 吗?
-
在我看来你应该使用一个连贯的厨师包。 Chef-dk 以连贯的方式附带所有 lib 和 gem,以编写和测试食谱。据我所知,综合安装总是有问题
标签: docker chef-infra test-kitchen