chef-server卡住ruby_block 动作在Docker容器上运行
我有一个运行docker1.2
的ubuntu
主机。 最重要的是我创build了一个运行centos6
容器! 当我尝试安装chef-server-11.x
版本时,它被卡在这里:
* file[/opt/chef-server/sv/rabbitmq/down] action delete (up to date) * link[/opt/chef-server/init/rabbitmq] action create (up to date) * link[/opt/chef-server/service/rabbitmq] action create (up to date) * ruby_block[supervise_rabbitmq_sleep] action run
谷歌search后,我发现我们需要指定平台在/opt/chef-server/embedded/cookbooks/runit/recipes/default.rb
,我看到下面的文件包含,但它仍然不工作:
when "centos" include_recipe "runit::upstart"
我需要为docker运行centos
指定其他的东西吗?
我已经解决了上述问题:
因为Docker用自己的replace了默认的/ sbin / init,所以没有办法在Docker容器中运行Upstart init。 但是这会导致一些问题:一些Debian软件包试图与Upstart进行通信,并且无法安装。
解:
$sudo dpkg-divert --local --rename --add /sbin/initctl $sudo ln -s /bin/true /sbin/initctl