【问题标题】:Docker chef cookbook on windowsWindows 上的 Docker 厨师食谱
【发布时间】:2017-11-02 00:38:58
【问题描述】:

我正在使用厨师客户端通过 docker 运行食谱。它在 Ubuntu 上运行,但在 Windows 上出现错误。 Cookbook 中已经添加了 docker 的依赖关系。

https://supermarket.chef.io/cookbooks/docker

我正在使用 docker 食谱的示例。

docker_image 'busybox' do
  action :pull
end


Error :
Recipe: tomcatcookbook::default
  * docker_image[busybox] action pull[2017-11-01T14:02:43+05:30] INFO: Processing docker_image[busybox] action pull (tomcatcookbook::default line 6)


    ================================================================================
    Error executing action `pull` on resource 'docker_image[busybox]'
    ================================================================================

    Excon::Error::Socket
    --------------------
    An address incompatible with the requested protocol was used. - socket(2) (Errno::EAFNOSUPPORT)

    Resource Declaration:
    ---------------------
    # In C:/chef/cache/cookbooks/tomcatcookbook/recipes/default.rb

      6: docker_image 'busybox' do
      7:   action :pull
      8: end
      9:

    Compiled Resource:
    ------------------
    # Declared in C:/chef/cache/cookbooks/tomcatcookbook/recipes/default.rb:6:in `from_file'

    docker_image("busybox") do
      action [:pull]
      default_guard_interpreter :default
      declared_type :docker_image
      cookbook_name "tomcatcookbook"
      recipe_name "default"
      repo "busybox"
      connection #<Docker::Connection:0x0000000005a288c0 @url="unix:///", @options={:socket=>"/var/run/docker.sock", :read_timeout=>120}>
    end

    System Info:
    ------------
    chef_version=13.5.3
    platform=windows
    platform_version=10.0.15063
    ruby=ruby 2.4.2p198 (2017-09-14 revision 59899) [x64-mingw32]
    program_name=C:/opscode/chef/bin/chef-client
    executable=C:/opscode/chef/bin/chef-client

[2017-11-01T14:02:44+05:30] INFO: Running queued delayed notifications before re-raising exception

【问题讨论】:

    标签: windows docker chef-infra cookbook


    【解决方案1】:

    正如您在文档(平台支持列表)中所见,该说明书不支持 Windows。

    【讨论】:

    • 是的,确实如此,但您可以通过 tcp 端口通过 docker daemon 进行通信。您可以提供如下主机,它也可以在 Windows 中运行。 docker_image 'busybox' do action :pull host '127.0.0.1:2375' end 如果你可以编辑你的答案,请。
    • “不支持”并不意味着“不起作用”。这意味着它未经测试,不应依赖。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-29
    • 1970-01-01
    • 2014-12-05
    相关资源
    最近更新 更多