无法找到dockerfile-dev

时间:2019-03-07 15:20:06

标签: docker-compose

我正在尝试使用docker将其容器用于微服务,但是无法找到Dockerfile,我看到了许多博客,但仍不清楚。

我正在关注本教程。

https://testdriven.io/courses/microservices-with-docker-flask-and-react/part-one-docker-config/

我使用的命令是。 $ docker-compose -f docker-compose-dev.yml build

Docker-compose-dev文件的内容为。

version: '3.3'

services:

  users:
    build:
      context: ./
      dockerfile: Dockerfile-dev
    volumes:
      - './:/usr/src/app'
    ports:
      - 5001:5000
    environment:
      - FLASK_APP=project/__init__.py
      - FLASK_ENV=development

Dockerfile-dev的内容是

# base image
FROM python:3.7.2-alpine

# set working directory
WORKDIR /usr/src/app

# add and install requirements
COPY ./requirements.txt /usr/src/app/requirements.txt
RUN pip install -r requirements.txt

# add app
COPY . /usr/src/app

# run server
CMD python manage.py run -h 0.0.0.0

我在路径中运行命令。

C:\Users\testdriven-app\services\users\project

确切错误是:

Building users..
Error: Cannot locate the specified Dockerfile: Dockerfile-dev

enter image description here

1 个答案:

答案 0 :(得分:0)

Docker-compose-dev文件中,您将context: ./设置为当前目录,该目录不是Dockerfile所在的位置。 docker-compose构建中的上下文表示[Source]

  

要么是包含Dockerfile的目录的路径,要么是git存储库的URL。

dockerfile选项告诉您上下文中必须存在的Dockerfile的名称。

当您告诉docker-compose您的上下文时,您实际上是在对Docker Engine说:“这是我允许您访问的目录,您将在该目录中找到构建映像所需的所有文件”。