当我尝试根据 minishift 上的 DockerFile 代码构建以下链接时,它无法成功运行。有解决办法吗?
DockerFile 链接;
https://github.com/rromanissen/nifi-openshift/blob/master/base/Dockerfile
++编辑后的 Dockerfile;
USER root
WORKDIR ${NIFI_HOME}
RUN chmod +x start.sh
ENTRYPOINT ["../scripts/start.sh"]
仍然没有构建...
错误1:
Removing intermediate container b4e143597109
Step 23/24 : RUN chmod +x start.sh
---> Running in c5ebd4bae255
chmod: cannot access '/start.sh': No such file or directory
Removing intermediate container e55eb176f952
The command '/bin/sh -c chmod +x /start.sh' returned a non-zero code:1
输出的详细问题:
Removing intermediate container b4e143597109
Step 23/24 : RUN chmod +x start.sh
---> Running in c5ebd4bae255
chmod: cannot access 'start.sh': No such file or directory
Removing intermediate container c5ebd4bae255
The command '/bin/sh -c chmod +x start.sh' returned a non-zero code: 1
keremceliker@kerems-mbp nifi %
要对该 bash 脚本执行 chmod +x,您需要指定正确的路径。我认为这个 Dockerfile 是“../scripts/start.sh”。要确定正确的路径,您可以运行 Docker 直到该步骤,然后输入它并确定那里需要什么路径。
在更改映像集并添加非 root 用户的权限后,我已经使用 Dockerfile 修复了该问题。最后我在 OpenShift 上重新生成并重新构建,它像 NiFi 和 Zookeeper 一样工作!