Ошибка Docker при запуске: нет модуля с именем 'pytz'
При выполнении docker-compose run server python manage.py makemigrations
(создание миграций) и получении этой ошибки:
django.template.library.InvalidTemplateLibrary: Invalid template library specified.
ImportError raised when trying to load 'rest_framework.templatetags.rest_framework': No mo
dule named 'pytz'
Мой docker-compose.yml
:
version: '3'
services:
db:
build: ./etc/docker/db
restart: always
volumes:
- ./var/volumes/dbdata:/var/lib/mysql
env_file:
- ./etc/docker/db/env
healthcheck:
test: mysqladmin ping -h 127.0.0.1 -u root --password=example
interval: 1s
timeout: 5s
retries: 10
server: &web
build:
context: .
dockerfile: ./etc/docker/web/Dockerfile
volumes:
- ./server:/home/web/server
# depends_on:
# db: {condition: service_healthy}
ports:
- "8080:8080"
command: ["python", "manage.py", "runserver", "0.0.0.0:8080"]
Я попробовал установить pytz
через pip install pytz, но все равно получаю ту же ошибку. Теперь я не понимаю проблему, пожалуйста, помогите.
Вам необходимо установить все зависимости внутри Dockerfile. Ваш dockerfile должен содержать что-то вроде
COPY requirements.txt /app/requirements.txt
RUN pip install -r /app/requirements.txt
В файле requirements.txt содержатся все библиотеки, необходимые для работы сервера.
или вы можете просто установить нужные вам библиотеки внутри dockerfile
RUN pip install pytz django etc...