【发布时间】:2021-03-05 04:36:41
【问题描述】:
我安装了 django-cors-headers 3.5.0,但在尝试运行项目时出现错误。这是我的配置: 要求.txt:
Django==2.2.0
djangorestframework==3.9.1,<3.10.0
psycopg2>=2.7.5,<2.8.0
Pillow>=5.3.0,<5.4.0
django-jalali-date==0.3.1
django-cors-headers==3.5.0
settings.py:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
'rest_framework.authtoken',
'corsheaders', #<------There it is
'core',
'user',
'land',
]
MIDDLEWARE = [
'corsheaders.middleware.CorsMiddleware', # its middleware
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
CORS_ORIGIN_ALLOW_ALL = False
CORS_ORIGIN_WHITELIST = (
'http://localhost:3000',
)
码头工人撰写:
version: "3"
services:
app:
build:
context: .
ports:
- "8000:8000"
volumes:
- ./app:/app
command: >
sh -c "python manage.py wait_for_db &&
python manage.py migrate &&
python manage.py runserver 0.0.0.0:8000"
environment:
- DB_HOST=db
- DB_NAME=app
- DB_USER=postgres
- DB_PASS=supersecretpassword
depends_on:
- db
container_name: land_api
db:
image: postgres:10-alpine
environment:
- POSTGRES_DB=app
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=supersecretpassword
container_name: land_db
但是当我运行“docker-compose up”时,我得到了这个错误:
ModuleNotFoundError: No module named 'corsheaders'
我尝试在 dockerFile 中添加安装,但它也没有。 真的是bug吗?还是我错过了什么?
【问题讨论】:
-
您是否遵循本指南? docs.docker.com/compose/django
-
不,但关注是件好事
标签: python django docker django-rest-framework docker-compose