我正在使用这个 dockerfile 安装一个 chef-server 实例(我基于 Docker Hub 中的 this 文件)
FROM ubuntu:14.04
ENV DEBIAN_FRONTEND noninteractive
RUN apt-get update && apt-get install -yq wget
RUN wget --content-disposition "https://packages.chef.io/stable/ubuntu/12.04/chef-server_11.1.7-1_amd64.deb"
RUN dpkg -i chef-server*.deb
RUN dpkg-divert --local --rename --add /sbin/initctl
RUN ln -sv /bin/true /sbin/initctl
COPY chef-server.rb /etc/opscode/
RUN chef-server-ctl start
RUN rm chef-server_11.1.7-1_amd64.deb
ADD . /usr/local/bin/
EXPOSE 443
但是,当我运行
chef-server-ctl reconfigure
我明白了Error executing action `run` on resource 'ruby_block[supervise_rabbitmq_sleep]'
这与 this 本质上是相同的问题。和 this邮政。第一篇文章有一个解决方案,但它在我的构建中不起作用。
我用来构建和运行容器的命令是:
docker build -t elk/chef-server ~/elk/chef-server/
docker run --name chef-server -h chef-server --net elknet --ip 172.19.2.10 -p 5000:443 -p 5022:22 -t -i -d elk/chef-server /bin/bash
谢谢 :)
最佳答案
RabbitMQ 不喜欢在容器中运行。此外,Chef Server 11 早已停产。如果您真的想尝试在 Docker 中运行 Chef Server,一个更好的选择是从 https://github.com/3ofcoins/docker-chef-server 开始。尽管那已经过时了。因为这次我们不建议在 Docker 中运行 Chef Server。
关于ubuntu - Chef-server 在运行重新配置时卡住了 ruby_block[supervise_rabbitmq_sleep],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38369570/