Docker 构建似乎看不到 requirements.txt 即使它在同一目录中

Thi*_*ven 6 python django gunicorn docker docker-build

我正在建立一个网站,我使用 Django 和 Gunicorn 设置了后端,我正在尝试将整个内容打包在一个 docker 容器中。我17.05.0-ce在 Ubuntu 17.04 Zesty 上使用 docker edge。出于某种原因,即使目录中mysiteDockerfile, Django 应用程序, requirements.txt, start.sh在 github 上),docker 构建在ADD requirements.txt /app/src/requirements.txt.

# Dockerfile

# FROM base image to build upon
FROM phusion/baseimage

# RUN install python and pip
RUN apt-get update
RUN apt-get install -y python python-pip python-dev 

# ADD requirements.txt and RUN pip to install them
ADD requirements.txt /app/src/requirements.txt
WORKDIR /app/src
RUN pip install -r requirements.txt

# EXPOSE port 8000 to allow communication to/from server
EXPOSE 8000

# CMD execute start.sh to start the server running.

WORKDIR /app/src/mysite
CMD ["/start.sh"]
# done!
Run Code Online (Sandbox Code Playgroud)

我导航到“mysite”,运行docker build - < Dockerfile并在它复制的行上停止requirements.txt,我收到以下错误:

Sending build context to Docker daemon  2.048kB
Step 1/9 : FROM phusion/baseimage
 ---> 877509368a8d
Step 2/9 : RUN apt-get update
 ---> Using cache
 ---> adcb4b9e8b08
Step 3/9 : RUN apt-get install -y python python-pip python-dev
 ---> Using cache
 ---> 8dbbd3e010d5
Step 4/9 : ADD requirements.txt /app/src/requirements.txt
lstat requirements.txt: no such file or directory
Run Code Online (Sandbox Code Playgroud)

这对我来说,说我做这一切都是错误的。

Rob*_*ert 3

您没有向 docker 守护进程发送上下文来构建您的项目。

用这个:

docker build -t invent_an_image_name /path/to/mysite
Run Code Online (Sandbox Code Playgroud)