我正在关注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没有启动?如何使用主管?
答案 0 :(得分:2)
您的配置位于/etc/supervisorconf.d
,我不相信这是正确的位置。
应该是/etc/supervisor/conf.d/supervisord.conf
。
如果您在本地创建文件然后使用COPY指令将其放入图像中,它也更容易维护。
然后,有人提到您可以在容器运行(docker exec -it <container id> /bin/bash
)后连接到容器,然后运行supervisorctl
以查看正在运行的内容以及可能出现的问题。< / p>
答案 1 :(得分:0)
也许你需要在supervisor.conf中使用换行符。尝试手工制作并将其复制到您的dockerfile中进行测试。