*我关注了 https://www.anchormen.nl/spark-docker/和
当我执行命令时,apache 启动失败,说“--”不被识别。
我对 spark 很陌生。向我们值得信赖的社区成员寻求帮助。
bash /opt/spark/sbin/start-master.sh
starting org.apache.spark.deploy.master.Master, logging to /opt/spark/logs/spark--org.apache.spark.deploy.master.Master-1-e6b8f9219a40.out
failed to launch: nice -n 0 /opt/spark/bin/spark-class org.apache.spark.deploy.master.Master --host e6b8f9219a40 --port 7077 --webui-port 8080
nohup: can't execute '--': No such file or directory
full log in /opt/spark/logs/spark--org.apache.spark.deploy.master.Master-1-e6b8f9219a40.out
*
与文章的唯一区别是我使用了 alpine linux,仅限于。
验证我试图cat日志文件..并得到了同样的错误。 docker 中的 alpine linux 无法识别“--”。我做错了什么吗?
[已解决] 谢谢罗伯特。
如果有人在寻找答案,请在您的 docker-file 中添加以下内容
RUN apk update && apk upgrade && apk add curl ca-certificates tar supervisor bash procps coreutils
最佳答案
您的问题在此 line
问题是alpine
图片自带 busybox
,它替代了许多命令,包括 nohup
和 ps
.所以 alpine 带有一个非 gnu nohup
无法处理的 --
, 和 ps
无法处理 -p
.
所以,安装 coreutils
和 procps
在任何调用 apache spark 脚本之前安装软件包以获得 nohup
的版本和 ps
你需要的。
在 Dockerfile 或容器命令行中:
RUN apk --update add coreutils procps
关于 Alpine linux docker 上的 apache-spark 启动错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44576787/