Docker搜索排名第一的直接安装,python和Django环境就现成的了

麻烦的是怎么用起来

round1

$ django-admin.py startproject testdj
cd testdj # 切换到我们创建的项目
$ python manage.py runserver 0:8000

看着像是成了,实际访问不了

round2







安装容器

sudo pip3 install uwsgi


新建 uwsgi.ini 配置文件(和 manage.py 文件同级目录

[uwsgi]
# 套接字方式的 IP地址:端口号
# socket=127.0.0.1:8000
# Http通信方式的 IP地址:端口号
http=127.0.0.1:8000
#上述两种方式选择其一,在使用Nginx需要使用socket
# 项目当前工作目录自行配置
chdir=/home/.../.../my_projectname 这里需要换为项目文件夹的绝对路径
# 项目中wsgi.py文件的目录,相对于当前工作目录
wsgi-file=my_project/wsgi.py
#是否启动主进程来管理其他进程
master=true
# 进程个数,根据电脑配置设置
process=4
# 每个进程的线程个数
threads=2
# 服务的pid记录文件
pidfile=uwsgi.pid
# 服务的日志文件位置
daemonize=uwsgi.log

然后修改 settings.py 文件将其设置为适合线上生产环境使用,如下所示:

DEBUG=False                    #关闭调试模式
ALLOWED_HOSTS = ['*']   #任何ip都可以访问


启动 uwsgi 命令
$ cd 项目文件夹
$ sudo uwsgi --ini uwsgi.ini
停止 uwsgi 命令
$ cd 项目文件夹
$ sudo uwsgi --stop uwsgi.pid

python manage.py 命令详解

(venv) ➜  mytest python manage.py 

Type 'manage.py help <subcommand>' for help on a specific subcommand.

Available subcommands:

[auth]
    changepassword   修改用户密码
    createsuperuser  创建超级用户

[contenttypes]
    remove_stale_contenttypes

[django]
    check  检查Django项目的完整性
    compilemessages  # 编辑语言文件
    createcachetable 查看你的配置和Django的默认配置有和不同
    dbshell 进入Django dbshell 数据库交互模式
    diffsettings
    dumpdata  导出数据库
    flush 清空数据库
    inspectdb
    loaddata
    makemessages
    makemigrations 创建数据库同步脚本
    migrate 根据模型创建数据表
    sendtestemail
    shell  交互模式   主要是调试数据库
    showmigrations 查看生产数据库的同步脚本
    sqlflush 查看生成清空数据库的脚本
    sqlmigrate 查看数据库同步的SQL语句
    sqlsequencereset
    squashmigrations
    startapp   创建一个新app
    startproject # 创建一个新项目
    test
    testserver

[sessions]
    clearsessions

[staticfiles]
    collectstatic  # 收集静态文件到到指定文件夹,用于部署前
    findstatic # 查询项目中的静态文件
    runserver  启用Django为我们提供的轻量级的开发用的Web服务器。默认情况下,服务器运行在IP地址127.0.0.1的8000端口上。如果要自定义服务器端口和地址,可以显式地传递一个IP地址和端口号给它。

  • 无标签