主管没有启动

Supervisor is not starting up

我正在按照cloudera cdh4 安装指南进行操作。

我的基础文件

FROM ubuntu:precise

RUN apt-get update -y
#RUN apt-get install -y curl

RUN apt-get install -y software-properties-common python-software-properties

RUN add-apt-repository ppa:webupd8team/java

RUN apt-get update -y
RUN echo debconf shared/accepted-oracle-license-v1-1 select true | \
debconf-set-selections
RUN apt-get install -y oracle-java7-installer

#Checking java version
RUN java -version

我的hadoop安装文件

java_ubuntu 是从我的基本文件构建的图像。

FROM java_ubuntu:latest

RUN apt-get update -y
RUN apt-get install -y curl

RUN curl http://archive.cloudera.com/cdh4/one-click-install/precise/amd64/cdh4-repository_1.0_all.deb > cdh4-repository_1.0_all.deb
RUN dpkg -i cdh4-repository_1.0_all.deb
RUN curl -s http://archive.cloudera.com/cdh4/ubuntu/precise/amd64/cdh/archive.key | apt-key add -

RUN apt-get update -y
RUN apt-get install -y hadoop-0.20-conf-pseudo

#Check for /etc/hadoop/conf.pseudo.mrl to verfiy hadoop packages
RUN echo "dhis"  
RUN dpkg -L hadoop-0.20-conf-pseudo

主管部分 hadoop_ubuntu 是从我的 hadoop 安装 docker 文件

构建的图像
FROM hadoop_ubuntu:latest

USER hdfs
RUN hdfs namenode -format

USER root

RUN apt-get install -y supervisor
RUN echo "[supervisord] nodameon=true  [program=namenode] command=/etc/init.d/hadoop-hdfs-namenode -D" > /etc/supervisorconf.d

CMD ["/usr/bin/supervisord"]

程序已成功构建。但是 namenode 没有启动?如何使用主管?

也许您的 supervisor.conf 中需要换行符。尝试手工制作一个并将其复制到您的 dockerfile 中进行测试。

Docker and supervisord

您的配置在 /etc/supervisorconf.d 中,我认为那不是正确的位置。

应该是/etc/supervisor/conf.d/supervisord.conf

另外在本地做一个文件,然后用COPY指令放到镜像中,维护起来更方便。

然后正如有人提到的那样,您可以在 运行ning (docker exec -it <container id> /bin/bash) 之后连接到容器,然后 运行 supervisorctl 看看是什么 运行 ning 可能有什么问题。