我想跑步 Hadoop
以及 Flume
停靠。我有一个标准 Hadoop
具有所有默认值的图像。我看不出这些服务如何在分开的容器中相互通信。 Flume
的 Dockerfile
看起来像这样:
FROM ubuntu:14.04.4
RUN apt-get update && apt-get install -q -y --no-install-recommends wget
RUN mkdir /opt/java
RUN wget --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie" -qO- \
https://download.oracle.com/otn-pub/java/jdk/8u20-b26/jre-8u20-linux-x64.tar.gz \
| tar zxvf - -C /opt/java --strip 1
RUN mkdir /opt/flume
RUN wget -qO- http://archive.apache.org/dist/flume/1.6.0/apache-flume-1.6.0-bin.tar.gz \
| tar zxvf - -C /opt/flume --strip 1
ADD flume.conf /var/tmp/flume.conf
ADD start-flume.sh /opt/flume/bin/start-flume
ENV JAVA_HOME /opt/java
ENV PATH /opt/flume/bin:/opt/java/bin:$PATH
CMD [ "start-flume" ]
EXPOSE 10000
1条答案
按热度按时间omvjsjqw1#
你应该连接你的容器。有一些变体可以用来实现这一点。
1) 发布端口:
docker run -p 50070:50070 hadoop
期权p
将docker容器的端口50070与主机的端口50070绑定2) 链接容器(使用docker compose)
docker-compose.yml公司
链接选项将flume容器与hadoop绑定
有关此的详细信息https://docs.docker.com/engine/userguide/networking/default_network/dockerlinks/