当前位置: 首页 > news >正文

将django+vue项目发布部署到服务器

1.部署django后端服务

部署架构

在这里插入图片描述

1.1 下载依赖插件
pip3.8 freeze > requirements.txt

在这里插入图片描述

1.2 安装依赖插件
pip3 install -r requirements.txt
1.3 安装mysql数据库
apt install mysql-server

在这里插入图片描述
初始化数据库

CREATE USER 'admin'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

创建数据库

CREATE DATABASE devops_api CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

在这里插入图片描述

1.4 上传项目代码,并修改配置文件
vim devops_api/settings.py
DEBUG = False  #关闭调试模式
ALLOWED_HOSTS = [*]  #允许所有主机部署
#修改数据库的配置为本地
DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'devops_api','USER': 'admin','PASSWORD': '123456','HOST': '127.0.0.1','PORT': '3306',}
}
1.4 配置启动uwsgi 服务
pip3 install uwsgi
root@devops:/home/devops/devops_api/uwsgi# cat uwsgi.ini 
[uwsgi]
#项目目录
chdir = /home/devops/devops_api
# 指定 sock 的文件路径
socket =/home/devops/devops_api/uwsgi/uwsgi.sock 
#指定监听端口
http = 0.0.0.0:8002
#静态资源
static-map=/static=/home/devops/devops_api/static
# wsgi 文件(django 入口)
wsgi-file=devops_api/wsgi.py
# 进程个数
processes = 4
# 指定项目的应用
# module = devops_api.wsgi
# 进程 pid
pidfile = /home/devops/devops_api/uwsgi/uwsgi.pid
# 日志路径
daemonize = /home/devops/devops_api/uwsgi/uwsgi.log

服务启动脚本

cat /etc/systemd/system/uwsgi.service
[Unit]
Description=HTTP Interface Server
[Service]
Type-forking
ExecStart=/usr/local/bin/uwsgi --ini /home/devops/devops_api/uwsgi/uwsgi.ini 
ExecReload=/bin/ki11-s HUP $MAINPID
Restart=always
[Install]
WantedBy=multi-user.target

在这里插入图片描述
在这里插入图片描述

1.5 配置启动nginx
apt -y install nginx
root@devops:/etc/nginx/conf.d# cat devops_api.conf server {listen    8001 default_server;server_name _;location / {include   uwsgi_params;        uwsgi_pass unix:/home/devops/devops_api/uwsgi/uwsgi.sock;}
}  
systemctl restart nginx
1.6 测试启动后端服务
python3 manage.py runserver 127.0.0.1:9000

如图所示证明后端服务启动正常
在这里插入图片描述

1.7 初始化后端数据库
python3  manage.py migrate   
python3  manage.py createsuperuser

在这里插入图片描述

2.部署vue前端服务

2.1 修改前端代码 指向后端api地址
const instance = axios.create({baseURL: 'http://127.0.0.1:8001/api/',timeout: 10000
});

在这里插入图片描述

2.2 打包前端项目

在这里插入图片描述
在这里插入图片描述
将前端编译代码上传到目标服务器的指定目录
在这里插入图片描述

2.3 配置启动前端nginx
root@devops:/etc/nginx/conf.d# cat devops_web.conf server {listen    80;server_name _;root /home/devops/devops_web;location / {try_files $uri /index.html;}
}   

2.验证登录

使用刚才创建的系统管理员账号登录
在这里插入图片描述

在这里插入图片描述
至此完成项目的前后端部署

http://www.lryc.cn/news/491740.html

相关文章:

  • 函数类型注释和Union联合类型注释
  • python画图|无坐标轴自由划线操作fig.add_artist(lines.Line2D()函数
  • MacOS系统上Jmeter 录制脚本遇到的证书坑位
  • 网络层协议IP
  • 《硬件架构的艺术》笔记(七):处理字节顺序
  • 反向代理模块
  • 风尚云网前端学习:一个简易前端新手友好的HTML5页面布局与样式设计
  • spacy 安装 en_core_web_sm
  • SpringBoot(9)-Dubbo+Zookeeper
  • 嵌入式的C/C++:深入理解 static、const 与 volatile 的用法与特点
  • 信创改造 - TongRDS 替换 Redis
  • 周志华深度森林deep forest(deep-forest)最新可安装教程,仅需在pycharm中完成,超简单安装教程
  • python VS c++
  • 提升软件测试报告的质量:Allure2中添加用例失败截图、日志、HTML块和视频的方法
  • 基于IPMI的服务器硬件监控指标解读
  • VUE字符串转日期加天数
  • Android12 mtk设置插充电器自动开机
  • JSON路径工具类`JsonPathUtil`的实现与应用
  • 人名分类器(nlp)
  • 斐波那契数列 相关问题 详解
  • Pytorch微调深度学习模型
  • springboot 使用笔记
  • 网络安全基础——网络安全法
  • SCAU软件体系结构实验四 组合模式
  • Amazon商品详情API接口:电商创新与用户体验的驱动力
  • 手机无法连接服务器1302什么意思?
  • Android adb shell dumpsys audio 信息查看分析详解
  • Python 网络爬虫操作指南
  • 基于FPGA的2FSK调制-串口收发-带tb仿真文件-实际上板验证成功
  • JavaScript的基础数据类型