Включить импорт колбы в python - PullRequest
0 голосов
/ 23 июня 2019

У меня есть приложение реакции, которое взаимодействует с API фляги и отображает данные. У меня были оба этих проекта в отдельных папках, и все работало нормально.

Затем я захотел контейнировать приложение Flask + React с помощью docker-compose для практики, а затем я создал папку, в которой у меня есть папки middleware (flask) и frontend (реагировать). Затем я создал виртуальную среду и установил колбу. Теперь, когда я импортирую флягу внутри файла Python, я получаю сообщение об ошибке.

Я не понимаю, почему простое добавление папки в другую папку повлияет на мой проект. Вы можете увидеть структуру проекта и ошибки на рисунке ниже.

Приложение реакции Dockerfile

FROM node:latest

# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

COPY package.json /usr/src/app/

RUN npm install

CMD [ "npm", "start" ]

Колба Dockerfile API

FROM python:3.7.2

# set working directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

# add requirements (to leverage Docker cache)
ADD ./requirements.txt /usr/src/app/requirements.txt

# install requirements
RUN pip install -r requirements.txt

# add app
ADD . /usr/src/app

# run server
CMD python app.py runserver -h 0.0.0.0

докер-compose.yml

version: '3'

services:
    middleware:
        build: ./middleware
        expose:
            - 5000
        ports:
            - 5000:5000
        volumes:
            - ./middleware:/usr/src/app
        environment:
            - FLASK_ENV=development
            - FLASK_APP=app.py
            - FLASK_DEBUG=1
    frontend:
        build: ./frontend
        expose:
            - 3000
        ports:
            - 3000:3000
        volumes:
            - ./frontend/src:/usr/src/app/src
            - ./frontend/public:/usr/src/app/public
        links:
            - "middleware:middleware"

project structure

1 Ответ

1 голос
/ 23 июня 2019

При перемещении папок вы должны изменить путь к питону в файле vscode/.settings.В противном случае вы будете использовать неправильный интерпретатор Python - без Flask.

...