gpt4 book ai didi

docker - 在 docker run 中获取权限被拒绝

转载 作者:行者123 更新时间:2023-12-02 01:09:33 25 4
gpt4 key购买 nike

我正在尝试使用 Dockerfile 来使用 Docker。

我的Dockerfile如下,我使用的是debian linux系统。

FROM debian:jessie

ENV DEBIAN_FRONTEND noninteractive

ARG AIRFLOW_VERSION=1.7.1.3
ENV AIRFLOW_HOME /usr/local/airflow

..
..

COPY script/entrypoint.sh /entrypoint.sh
COPY config/airflow.cfg ${AIRFLOW_HOME}/airflow.cfg
..
..
USER airflow
WORKDIR ${AIRFLOW_HOME}
ENTRYPOINT ["/entrypoint.sh"]

因此,当我运行docker build -t test .时,它的构建没有问题。

但是,当我运行docker run -p 8080:8080 test时。

它抛出以下错误:

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

我做错了什么?

最佳答案

在调用ENTRYPOINT之前,您需要通过chmod +xentrypoint.sh更改bash文件的权限。因此,将您的代码更改为以下内容:

USER airflow
WORKDIR ${AIRFLOW_HOME}
RUN chmod +x entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]

重建镜像并运行容器,它应该可以工作。

关于docker - 在 docker run 中获取权限被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44687685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com