Open kasured opened 8 years ago
Have to add, that it become an error, if you try to use some io compression library like Snappy of zlib. As error says libhadoop wasn't build with their support. Moreover due to libhadoop requires glibc 2.4+, as kasured mentioned and this docker image uses CentOS 6.5 you CAN'T upgrade it more that 2.2.
There can be multiple solutions:
RUN curl https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -o - | python
with
RUN curl https://bitbucket.org/pypa/setuptools/downloads/ez_setup.py -o - | python
and
ADD supervisord.conf /etc/supervisord.conf
with
RUN echo_supervisord_conf > /etc/supervisord.conf
Despite all this, I have no success building stable working docker container - have to comment these lines:
RUN service sshd start && $HADOOP_PREFIX/etc/hadoop/hadoop-env.sh && $HADOOP_PREFIX/sbin/start-dfs.sh && $HADOOP_PREFIX/bin/hdfs dfs -mkdir -p /user/root
RUN service sshd start && $HADOOP_PREFIX/etc/hadoop/hadoop-env.sh && $HADOOP_PREFIX/sbin/start-dfs.sh && $HADOOP_PREFIX/bin/hdfs dfs -put $HADOOP_PREFIX/etc/hadoop/ input
and my docker can't up DataNodes and NameNodes.
BUT after start from such prepared container you can type
yum -y install snappy snappy-devel
and get Snappy support
// take a look at HDP versions, they are heavy, immense, but have no such little troubles // have to admit, this docker image suits me well, just until native library support issue
By the way, you can use forked version of this repo, which has all native libraries support - https://github.com/sfedyakov/hadoop-271-cluster Also it has no problems with creating docker image via supervisor, cause it simply dont' use it
Even though Dockerfile contains "fix" for native library warning, I am still able to see the warning when running out of the box
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable Starting namenodes on [2d6335dea9d7] _Host: 3.10.0-229.20.1.el7.x8664 CentOS Linux release 7.2.1511 (Core)