Django前后端分离项目部署

我想请教下,Django前后端分离项目部署
最新回答
骑猪Δ追阳光

2024-11-25 14:48:25

在部署Django前后端分离项目的步骤中,首先要确保关闭数据库服务器的防火墙,通过执行`service firewalld stop`来实现。遇到与MySQL连接问题时,可能需要检查网络配置,如`django.db.utils.OperationalError: (2002, "Can't connect to MySQL server on '101.200.84.45' (10060)")`。安装Python环境依赖是必要的,通过`yum install git -y`安装Git,然后安装一系列编译依赖。

安装pyenv时,首先从GitHub克隆,然后按照提示将`pyenv`添加到系统路径中,通过修改`~/.bashrc`或`~/.bash_profile`来实现。安装特定版本的Python(如3.6.9)需要较长的时间,`pyenv install 3.6.9 -vvv`。

创建虚拟环境是部署过程的一部分,使用`pyenv virtualenv 3.6.9 mag369`创建名为`mag369`的环境。在项目文件夹中,创建www目录并设置环境,如`mkdir www cd www pyenv local mag369`。

安装lrzsz软件用于文件传输,`yum install lrzsz`。将前端项目上传到www目录,通过`rz`接收,然后解压文件。在`blog-1.0`文件夹中,确保pip的更新并安装依赖。

在设置数据库连接时,可能会遇到`mysqlclient`版本问题,需要安装相关开发包并重新安装`requirements`。设置`DEBUG`和`ALLOWED_HOSTS`后,通过`python manage.py runserver 0.0.0.0:8000`开启服务器,确保内外网访问。

遇到数据库迁移问题时,需要升级数据库,创建表并分配权限。部署过程中,会用到Nginx作为反向代理,配置uwsgi以处理API请求,并通过`uwsgitop`监控性能。前端项目打包完成后,将dist文件夹部署到Nginx的站点目录,确保前后端接口的正确连接。

最终,优化uwsgi配置,调整监听端口和进程数,通过`uwsgi blog.ini`启动,确认进程数以确保稳定运行。至此,完成了Django项目的前后端分离部署。