docker permission denied in windows

2019-08-23 00:03发布

问题:

I create a docker file like this:

FROM jupyter/scipy-notebook

MAINTAINER Jon Krohn <jon@untapt.com>

USER $NB_USER

# install TensorFlow
RUN conda install tensorflow tensorflow

# install tflearn and keras: 
RUN pip install tflearn==0.3.2
RUN pip install keras==2.0.8

# install NLP packages:
RUN pip install nltk==3.2.4
RUN pip install gensim==2.3.0

# install Reinforcement Learning packages:
RUN pip install gym==0.9.4

my problem is after building my image when I want to run this Image with:

docker run -v D:/TensorFlow-LiveLessons:/home/jovyan/work -it --rm -p 8888:8888 tensorflow-ll-stack .    

I get this error message

[FATAL tini (6)] exec . failed: Permission denied      

I shared the D drive and I'm using win10.
thanks for any help.

回答1:

It seems that your problem is at you last command. In : docker run -v D:/TensorFlow-LiveLessons:/home/jovyan/work -it --rm -p 8888:8888 tensorflow-ll-stack ., you are telling docker to launch a container with a command ".". From the doc you linked me in the comments, you mixed up docker build and docker run.

Docker build take a context path as a parameter, where it can find a Dockerfile. It often a ".", if you are executing the command from the same directory.

Docker run take a command as a parameter, which will be used as an entry point for you image.

Now, it looks more like a copy past problem, since you documentation show that the docker run command is docker run -v c:/full/path/to/the/clone:/home/jovyan/work -it --rm -p 8888:8888 tensorflow-ll-stack without the point, but it never bad to learn about docker build and docker run.

Have fun!