【问题标题】:Test kitchen with kitchen-docker doesn't work使用 kitchen-docker 测试厨房不起作用
【发布时间】: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


【解决方案1】:

这条消息:

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?

表示您的 docker 守护程序没有运行。试试?

service docker start

检查/var/run/docker.sock之后是否存在。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-27
    相关资源
    最近更新 更多