2016-04-25 11 views
1

私のhadoop環境を設定するためのDockerfileを作成しようとしています。 手順の1つでは、私はbashrcファイルにいくつかの行を追加する必要があります。Dockerfile経由でファイルを編集する方法

Step 10 : EXPORT 
Unknown instruction: EXPORT 

私は私のbashrcファイルを編集することができますどのように任意のアイデア:

RUN wget http://apache.mirror.digitalpacific.com.au/hadoop/common/current/hadoop-2.7.2.tar.gz 
RUN tar -zxvf hadoop-2.7.2.tar.gz 
RUN cp -R hadoop-2.7.2 /usr/local/hadoop 
RUN cd /usr/local/hadoop 
RUN cat <<EOF>> ~/.bashrc 
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64 
export HADOOP_INSTALL=/usr/local/hadoop 
export PATH=$PATH:$HADOOP_INSTALL/bin 
export PATH=$PATH:$HADOOP_INSTALL/sbin 
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL 
export HADOOP_COMMON_HOME=$HADOOP_INSTALL 
export HADOOP_HDFS_HOME=$HADOOP_INSTALL 
export YARN_HOME=$HADOOP_INSTALL 
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native 
export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib" 
EOF 
RUN source ~/.bashrc 

は、しかし、私は以下のエラーを取得しています:これは私がやっている何ですか?

注:私も試した

ENV JAVA_HOME /usr/lib/jvm/java-1.7.0-openjdk-amd64 
ENV HADOOP_INSTALL /usr/local/hadoop 
ENV PATH $PATH:$HADOOP_INSTALL/bin 
ENV PATH $PATH:$HADOOP_INSTALL/sbin 
ENV HADOOP_MAPRED_HOME $HADOOP_INSTALL 
ENV HADOOP_COMMON_HOME $HADOOP_INSTALL 
ENV HADOOP_HDFS_HOME $HADOOP_INSTALL 
ENV YARN_HOME $HADOOP_INSTALL 
ENV HADOOP_COMMON_LIB_NATIVE_DIR $HADOOP_INSTALL/lib/native 
ENV HADOOP_OPTS "-Djava.library.path=$HADOOP_INSTALL/lib" 

RUN echo $'export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-amd64' >> ~/.bashrc 
RUN echo $'export HADOOP_INSTALL=/usr/local/hadoop' >> ~/.bashrc 
RUN echo $'export PATH=$PATH:$HADOOP_INSTALL/bin' >> ~/.bashrc 
RUN echo $'export PATH=$PATH:$HADOOP_INSTALL/sbin' >> ~/.bashrc 
RUN echo $'export HADOOP_MAPRED_HOME=$HADOOP_INSTALL' >> ~/.bashrc 
RUN echo $'export HADOOP_COMMON_HOME=$HADOOP_INSTALL' >> ~/.bashrc 
RUN echo $'export HADOOP_HDFS_HOME=$HADOOP_INSTALL' >> ~/.bashrc 
RUN echo $'export YARN_HOME=$HADOOP_INSTALL' >> ~/.bashrc 
RUN echo $'export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native' >> ~/.bashrc 
RUN echo $'export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"' >> ~/.bashrc 

まだ成功

答えて

0

エコーとDockerfileの複数行の構文を試してみてください。

RUN echo $'this is\n\ 
a multiline\n\ 
string\n'\ 
>> ~/.bashrc 
+0

が動作しませんでしたが、ドッカーは文句を言っていませんでしたが、私はドッカーがdebian cat〜/ .bashrcを実行し、新しい行が見つからない –