10

我目前正在尝试处理对 kubernetes 集群的部署。部署不断失败并响应

 Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "exec: \"/entrypoint.sh\": permission denied"

我试图更改文件的权限,这似乎成功了,就好像我 ls -l 我得到 -rwxr-xr-x 作为文件的权限一样。

我曾尝试将 chmod 命令放在 dockerfile 本身以及在构建和上传图像之前,但似乎都没有任何区别。任何想法为什么我仍然收到错误?

dockerfile 下面

FROM node:10.15.0
CMD []
ENV NODE_PATH /opt/node_modules

# Add kraken files
RUN mkdir -p /opt/kraken
ADD .  /opt/kraken/
# RUN chown -R node /opt/
WORKDIR /opt/kraken

RUN npm install && \
    npm run build && \
    npm prune --production

# Add the entrypoint
COPY ./entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
USER node
ENTRYPOINT ["/entrypoint.sh"]
4

3 回答 3

11

此错误与入口点错误无关,而是与内部命令有关。始终使用“sh script.sh”启动脚本,无论是入口点还是 cmd。在这种情况下,它将是:ENTRYPOINT ["sh", "entrypoint.sh"]

于 2019-08-13T17:01:11.603 回答
0

我使用 Dockerfile 和 entrypoint.sh 文件创建了一个 github 操作。我在计算机中运行命令“chmod +x”并推送到 github 存储库。我没有在 Dockerfile 中运行 'chmod +x'。有用。

于 2021-11-30T11:49:51.767 回答
0

托盘 docker exec -it /bin/sh

于 2022-01-12T11:36:45.227 回答