Я установил библиотеку с именем fastai==1.0.59
через requirements.txt
файл внутри моего Dockerfile
.
Но цель запуска приложения Django не достигается из-за одной ошибки. Чтобы устранить эту ошибку, мне нужно вручную отредактировать файлы /site-packages/fastai/torch_core.py
и site-packages/fastai/basic_train.py
внутри этой папки библиотеки, которые я не собираюсь.
Поэтому я пытаюсь скопировать саму папку fastai
от моего хост-компьютера до местоположения внутри docker изображения.
исходное местоположение: /Users/AjayB/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/fastai/
место назначения: ../venv/lib/python3.6/site-packages/
, которое находится внутри моего docker изображения.
будучи новичком в docker, я попробовал это, используя команду COPY
, например: COPY /Users/AjayB/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/fastai/ ../venv/lib/python3.6/site-packages/
, которая выдала мне ошибку:
ERROR: Service 'app' failed to build: COPY failed: stat /var/lib/docker/tmp/docker-builder583041406/Users/AjayB/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/fastai: no such file or directory.
Я попытался сослаться на это: Как включить файлы вне контекста сборки Docker? , но кажется, что это немного отразилось в моей голове ..
Пожалуйста, помогите мне решить эту проблему. Спасибо.
Dockerfile:
FROM python:3.6-slim-buster AS build
MAINTAINER model1
ENV PYTHONUNBUFFERED 1
RUN python3 -m venv /venv
RUN apt-get update && \
apt-get upgrade -y && \
apt-get install -y git && \
apt-get install -y build-essential && \
apt-get install -y awscli && \
apt-get install -y unzip && \
apt-get install -y nano && \
apt-get install -y libsm6 libxext6 libxrender-dev
RUN apt-cache search mysql-server
RUN apt-cache search libmysqlclient-dev
RUN apt-get install -y libpq-dev
RUN apt-get install -y postgresql
RUN apt-cache search postgresql-server-dev-9.5
RUN apt-get install -y libglib2.0-0
RUN mkdir -p /model/
COPY . /model/
WORKDIR /model/
RUN pip install --upgrade awscli==1.14.5 s3cmd==2.0.1 python-magic
RUN pip install -r ./requirements.txt
EXPOSE 8001
RUN chmod -R 777 /model/
COPY /Users/AjayB/anaconda3/envs/MyDjangoEnv/lib/python3.6/site-packages/fastai/ ../venv/lib/python3.6/site-packages/
CMD python3 -m /venv/activate
CMD /model/my_setup.sh development
CMD export API_ENV = development
CMD cd server && \
python manage.py migrate && \
python manage.py runserver 0.0.0.0:8001