diff --git a/datanode/Dockerfile b/datanode/Dockerfile new file mode 100644 index 0000000..55be14a --- /dev/null +++ b/datanode/Dockerfile @@ -0,0 +1,16 @@ +FROM bde2020/hadoop-base:2.0.0-hadoop3.2.1-java8 + +MAINTAINER Ivan Ermilov + +HEALTHCHECK CMD curl -f http://localhost:9864/ || exit 1 + +ENV HDFS_CONF_dfs_datanode_data_dir=file:///hadoop/dfs/data +RUN mkdir -p /hadoop/dfs/data +VOLUME /hadoop/dfs/data + +ADD run.sh /run.sh +RUN chmod a+x /run.sh + +EXPOSE 9864 + +CMD ["/run.sh"] diff --git a/datanode/run.sh b/datanode/run.sh new file mode 100644 index 0000000..bbbb9e3 --- /dev/null +++ b/datanode/run.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +datadir=`echo $HDFS_CONF_dfs_datanode_data_dir | perl -pe 's#file://##'` +if [ ! -d $datadir ]; then + echo "Datanode data directory not found: $datadir" + exit 2 +fi + +$HADOOP_HOME/bin/hdfs --config $HADOOP_CONF_DIR datanode