在不使用内置图像的情况下在 docker 中设置 zeppelin
Setup zeppelin in docker without using built-in image
我需要在 docker 中安装 zeppelin 而不使用内置映像,因为它的大小很大(以 gb 为单位)。我想从二进制文件安装 zeppelin,例如 zeppelin-0.8.2-bin-netinst.tgz (Only spark interpreter ~ 318 mb)
我的 Dockerfile
FROM openjdk:8
RUN wget -O /tmp/zeppelin-0.8.2-bin-netinst.tgz https://mirror.downloadvn.com/apache/zeppelin/zeppelin-0.8.2/zeppelin-0.8.2-bin-netinst.tgz
RUN tar -xvzf /tmp/zeppelin-0.8.2-bin-netinst.tgz -C /opt && rm /tmp/zeppelin-0.8.2-bin-netinst.tgz
EXPOSE 8080
我构建 docker 图像和 运行 容器
docker build -t test:1.0 .
docker run -p 8080:8080 -it test:1.0 /bin/bash
并手动启动 zeppelin
/opt/zeppelin-0.8.2-bin-netinst/bin/zeppelin-daemon.sh start
我收到了结果
Zeppelin start [ OK ]
但是当我从浏览器 http://localhost:8080/ 访问 zeppelin 时,我收到:
This page isn’t working
localhost didn’t send any data.
ERR_EMPTY_RESPONSE
我尝试了 运行 命令 bin/zeppelin.sh 但没有出现。
我哪里错了?
我用 docker ps 命令检查了我的容器,结果 sas:
5d37f4a18a53 test:1.0 "/bin/bash" 27 minutes ago Up 27 minutes 0.0.0.0:8080->8080/tcp brave_bardeen
如果我从 docker 主机远程登录:telnet localhost 8080 并且它有效。为什么我无法从浏览器访问 zeppelin?
感谢和问候
我发现了一些有用的东西 post:
我们需要设置 ZEPPELIN_ADDR=0.0.0.0,现在我可以从浏览器 localhost
访问 zeppelin
docker run -p 8080:8080 -e ZEPPELIN_ADDR=0.0.0.0 -it test:1.0 /bin/bash
我需要在 docker 中安装 zeppelin 而不使用内置映像,因为它的大小很大(以 gb 为单位)。我想从二进制文件安装 zeppelin,例如 zeppelin-0.8.2-bin-netinst.tgz (Only spark interpreter ~ 318 mb)
我的 Dockerfile
FROM openjdk:8
RUN wget -O /tmp/zeppelin-0.8.2-bin-netinst.tgz https://mirror.downloadvn.com/apache/zeppelin/zeppelin-0.8.2/zeppelin-0.8.2-bin-netinst.tgz
RUN tar -xvzf /tmp/zeppelin-0.8.2-bin-netinst.tgz -C /opt && rm /tmp/zeppelin-0.8.2-bin-netinst.tgz
EXPOSE 8080
我构建 docker 图像和 运行 容器
docker build -t test:1.0 .
docker run -p 8080:8080 -it test:1.0 /bin/bash
并手动启动 zeppelin
/opt/zeppelin-0.8.2-bin-netinst/bin/zeppelin-daemon.sh start
我收到了结果
Zeppelin start [ OK ]
但是当我从浏览器 http://localhost:8080/ 访问 zeppelin 时,我收到:
This page isn’t working
localhost didn’t send any data.
ERR_EMPTY_RESPONSE
我尝试了 运行 命令 bin/zeppelin.sh 但没有出现。 我哪里错了?
我用 docker ps 命令检查了我的容器,结果 sas:
5d37f4a18a53 test:1.0 "/bin/bash" 27 minutes ago Up 27 minutes 0.0.0.0:8080->8080/tcp brave_bardeen
如果我从 docker 主机远程登录:telnet localhost 8080 并且它有效。为什么我无法从浏览器访问 zeppelin?
感谢和问候
我发现了一些有用的东西 post:
我们需要设置 ZEPPELIN_ADDR=0.0.0.0,现在我可以从浏览器 localhost
访问 zeppelindocker run -p 8080:8080 -e ZEPPELIN_ADDR=0.0.0.0 -it test:1.0 /bin/bash