当前位置:   article > 正文

最新宝塔面板部署Django项目教程(踩坑无数板,保姆级教学)_宝塔部署django项目

宝塔部署django项目

目录

前言

一、宝塔面板配置

1.云服务器配置

2.宝塔面板安装

二、Django部署

1.Django项目准备

1.1依赖包导出

​编辑

1.2静态文件导出

2.宝塔项目部署

2.1导入项目

2.2python项目导入

2.3配置nginx

2.4访问测试

2.5配置静态文件

前言

本文章是使用腾讯云专享版宝塔面板部署Django项目,踩了无数的坑和看了无数的教程(新手),才部署成功,现在分享给大家。

云服务器:腾讯云

python:3.9.0

Django:4.2.13

时间:2024.6.19

一、宝塔面板配置

配置好,直接跳过这一步。

1.云服务器配置

本文使用腾讯云演示,其他云平台也是一样(新用户可以免费试用),购买(试用)云服务器。

重装系统,选择CentOS系统,记住自定义密码。

一键登录系统

2.宝塔面板安装

进入CentOS系统,输入su,然后再输入上面的自定义密码。打开宝塔面板官网,找到centos安装脚本复制到CentOS系统中,安装成功后,获得宝塔面板的面板地址、用户名和密码,同时要在云服务器的防火墙开放面板端口,不打开端口会访问失败。

放一个宝塔面板的CentOS安装脚本

yum install -y wget && wget -O install.sh https://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec

 通过外网地址登录进去后下载需要的软件,宝塔软件里安装Nginx,mysql(django) Nginx ,mysql (django4需要最低mysql8)与及其他你需要的软件.

以上的操作基本没有什么难度,也没有什么问题。

二、Django部署

1.Django项目准备

1.1依赖包导出

首先在本地(使用的是pycharm打开项目)将项目的依赖包导出,在终端里使用下面的命令会在项目工程中自动生成 requirements.txt文件,如果使用的是虚拟环境,要先切换成虚拟环境再使用命令生成依赖包。(我建议为项目单独创一个虚拟环境,在导出依赖包时不会有很多的依赖,当然也有直接导本项目的依赖包命令,但有各种问题)

pip freeze > requirements.txt

1.2静态文件导出

STATIC_ROOT是在部署的时候才发挥作用,执行 python managy.py collectstatic ,会在工程文件下生成staticfiles文件夹,把各个app下的静态文件收集到这个目录下。步骤如下。

1.在Django中setting.py文件中加入

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')

 2.在终端中输入

 python manage.py collectstatic

 在项目目录中生成staticfiles文件,里面有项目所有的静态文件,这里关乎这你之后部署上后网页有没有样式。最后将项目打包压缩,完成Django项目准备。

2.宝塔项目部署

2.1导入项目

在宝塔面板导航栏中文件栏的/www/wwwroot目录里导入项目压缩包(文件夹不行),将压缩包解压然后删除。

2.2python项目导入

在网络导航栏的python项目中添加python项目,需要下载于你django版本匹配的python版本。添加python项目如下图可见。(这里换了项目添加,路径不太一样)


填完之后点确定,刷会dy等待环境安装, 等待期间别乱动。之后需要在宝塔的安全栏和腾讯云的防火墙(与之前打开宝塔地址的端口一样)里打开项目端口。

python项目创建成功后是这样。

打开设置将启动用户从www改成root

查看模块里面有没有项目需要的包,如Django,mysqlclient等,如果没有可以直接添加或者在终端使用命令添加。

2.3配置nginx

打开python项目管理选择域名管理,解析一个域名过来,在这里绑定,默认80端口。

打开外网映射,把开关点绿。

2.4访问测试

这时候将创建的项目重启,查看日志,如果没有报错可以使用(ip地址:端口)格式访问。

2.5配置静态文件

能够使用公网ip访问但是没有样式,静态文件没有调用。

 非常关键的一步:打开python项目设置的uwsgi配置中加入

static-map = /static=/www/wwwroot/userfeed/static

 把路径修改成django项目导出的静态文件路径,最后再访问网站地址,网站页面正常显示。

数据库的添加我之后再写。若有错误,请告知。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
  

闽ICP备14008679号