Django即使发生在manage.py中的设置,“发生异常:请求配置设置不正确,但未配置...” 追加:

如何解决Django即使发生在manage.py中的设置,“发生异常:请求配置设置不正确,但未配置...” 追加:

对不起,我是Django的新手,如果我忘记了任何重要信息,请发表评论

我已经在this VSCode tutorial之后设置了Django应用。简而言之,它教我在Venv中构建Django应用的docker映像。

当我开始使用VSCode运行时,发生错误,指出 Exception has occurred: ImproperlyConfigured Requested setting DEBUG,but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

但是,我的os.environ.setdefault('DJANGO_SETTINGS_MODULE','yiweis_blog.settings')wsgi.py中都有manage.py

同时,当我将外壳直接连接到容器并运行python manage.py runserver时,它将打印Django version 3.1.1,using settings 'yiweis_blog.settings'

我也曾尝试将变量yiweis_blog.settings分配给DJANGO_SETTINGS_MODULE中的dockerfile并在终端中导出该变量,但是它们仍然没有起作用。

感谢您的帮助。谢谢!

追加:

Directory Tree

yiweis_blog/yiweis_blog_env/lib/python3.8/site-packages/django/Dockerfile

(其中yiweis_blog是我的根文件夹,存在manage.py)

# For more information,please refer to https://aka.ms/vscode-docker-python
FROM python:3.8-slim-buster

EXPOSE 8000

# Keeps Python from generating .pyc files in the container
ENV PYTHONDONTWRITEBYTECODE 1

# Turns off buffering for easier container logging
ENV PYTHONUNBUFFERED 1

# Install pip requirements
ADD requirements.txt .
RUN python -m pip install -r requirements.txt

workdir /app
ADD . /app

# Switching to a non-root user,please refer to https://aka.ms/vscode-docker-python-user-rights
RUN useradd appuser && chown -R appuser /app
USER appuser

# During debugging,this entry point will be overridden. For more information,please refer to https://aka.ms/vscode-docker-python-debug
CMD ["gunicorn","--bind","0.0.0.0:8000","yiweis_blog.wsgi"]

yiweis_blog/manage.py

#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
import os
import sys


def main():
    """Run administrative tasks."""
    os.environ.setdefault('DJANGO_SETTINGS_MODULE','yiweis_blog.settings')
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)


if __name__ == '__main__':
    main()

docker-compose.yml

version: '3.4'

services:
  yiweisblog:
    image: yiweisblog
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - 8000:8000

gunicorn --bind 0.0.0.0:8000 yiweis_blog.wsgi的结果是:

appuser@7a4e96306663:/app$ gunicorn --bind 0.0.0.0:8000 yiweis_blog.wsgi
[2020-10-19 07:11:24 +0000] [40] [INFO] Starting gunicorn 20.0.4
[2020-10-19 07:11:24 +0000] [40] [INFO] Listening at: http://0.0.0.0:8000 (40)
[2020-10-19 07:11:24 +0000] [40] [INFO] Using worker: sync
[2020-10-19 07:11:24 +0000] [42] [INFO] Booting worker with pid: 42
[2020-10-19 07:11:41 +0000] [40] [INFO] Handling signal: winch

此后,它只是卡住了,不再响应了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?