Centos部属前后端项目
一、安装python3
# 下载并解压
cd /opt
wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz
tar -zxf Python-3.6.3.tgz # 编译安装
cd Python-3.6.3/
./configure --prefix=/opt/python3/
make && make install
二、下载node并解压
wget https://nodejs.org/dist/v10.15.0/node-v10.15.0-linux-x64.tar.xz
tar -xJf node-v10.15.0-linux-x64.tar.xz
三、添加环境变量
vim /etc/profile # 在文件的末尾添加
PATH=/opt/python3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/node-v10.15.0-linux-x64/bin # 保存退出,加载文件
source /etc/profile
四、安装虚拟环境工具virtualenvwrapper
pip3 install virtualenvwrapper vim ~/.bashrc
# 添加以下代码 WORKON_HOME=~/Envs
VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'
VIRTUALENVWRAPPER_PYTHON=/opt/python3/bin/python3
source /opt/python3/bin/virtualenvwrapper.sh # 保存,然后重新登陆
五、源码安装redis
cd /opt/
wget http://download.redis.io/releases/redis-4.0.12.tar.gz
tar -zxf redis-4.0.12.tar.gz
make && make install # 创建配置文件
vim /etc/redis.conf # 输入以下代码
port 6379
daemonize yes
protected-mode yes # 启动
redis-server /etc/redis.conf
六、部署前端
[root@localhost luffy_boy]# cd /opt/luffy/07-luffy_project_01/
[root@localhost 07-luffy_project_01]# ls
build dist node_modules package-lock.json src
config index.html package.json README.md static # 默认根据目录中的package.json安装相应的模块,生成node_modules文件夹
npm install # 替换向后端发送请求的URL接口 # 打包vue项目,生成一个dist的静态文件夹(注意内存,内存不足会打包失败)
npm run build
七、部署后端
# 1.进入虚拟环境
# 2.安装对应的模块
pip3 install requirements.txt # 3.进入项目的目录
# 4.创建uwsgi.ini
vim uwsgi.ini '''编写以下配置'''
[uwsgi]
# Django-related settings
# the base directory (full path)
chdir = /opt/luffy/luffy_boy
# Django's wsgi file
module = luffy_boy.wsgi
# the virtualenv (full path)
home = /root/Envs/luffy
# process-related settings
# master
master = true
# maximum number of worker processes
processes = 1
# the socket (use the full path to be safe
socket = 0.0.0.0:9000
#http =0.0.0.0:9000
# clear environment on exit
vacuum = true
#后台运行uwsgi
#daemonize=yes # 5.测试运行
uwsgi --ini uwsgi.ini
八、nginx的配置
# 1.修改nginx的配置文件 server {
listen 80;
server_name 192.168.11.169;
location / {
root /opt/luffy/07-luffy_project_01/dist;
index index.html index.htm;
}
} server {
listen 8000;
server_name 192.168.11.169;
# 反向代理
location /{
uwsgi_pass 0.0.0.0:9000;
include /opt/nginx/conf/uwsgi_params;
}
} # 启动nginx
/opt/nginx/sbin/nginx
九、安装并使用supervisor管理后端项目
# 1.退出虚拟环境
# 2.安装supervisor
easy_install supervisor # 3.通过命令生成supervisor的生成配置文件
echo_supervisord_conf > /etc/supervisor.conf # 4.修改配置文件
vim /etc/supervisor.conf '''在末尾添加以下代码'''
[program:luffy]
command=/root/Envs/luffy/bin/uwsgi /opt/luffy/luffy_boy/uwsgi.ini
stopasgroup=true
killasgroup=true # 5.保存退出,启动supervisor
supervisord -c /etc/supervisor.conf # 6.请求后端项目
supervisorctl -c /etc/supervisor.conf start all
部署完成!!!
Centos部属前后端项目的更多相关文章
- Docker 部署前后端项目
Docker 部署前后端项目 平生不会相思,才会相思,便害相思. 简介:都是被逼的,从零开始一个Docker 部署九个微服务和三个前端项目.其中,这些服务需要用到Nacos.MySQL.Nginx.E ...
- 在IDEA中使用Maven将SpringBoot项目打成jar包、同时运行打成的jar包(前后端项目分离)
1.maven教程官网 https://m.runoob.com/maven/ 2.理解Maven的构建生命周期(clean.Package) 3.在项目中使用maven进行打包 4.运行打包好的ja ...
- vue+django前后端项目部署
一.python3的安装 1.安装python前的库环境: yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel ...
- 【宝塔面板】centOS部署前后端分离所有遇到的坑,Django
1:刚刚买完服务器,在宝塔面板安装完一切工具,Django顺利运行后(不能运行一般是起了中文名) # 问题:想迁移数据库,结果发现-bash: python3: command not found# ...
- 测试开发【Mock平台】04实战:前后端项目初始化与登录鉴权实现
[Mock平台]为系列测试开发教程,从0到1编码带你一步步使用Spring Boot 和 Antd React 框架完成搭建一个测试工具平台,希望作为一个实战项目能为你的测试开发学习有帮助. 一.后端 ...
- spring boot+vue前后端项目的分离(我的第一个前后端分离项目)
文章目录 1.前端vue的搭建 2.后端项目的构建 pom文件中引入的jar包 yml文件用来配置连接数据库和端口的设置 application.property进行一些整合 controller层( ...
- Docker部署前后端项目
本地(ubuntu19.04)安装docker: sudo apt install docker.io SSH连接服务器: 安装Docker: yum update yum -y install do ...
- 简述前后端项目RSA+AES加解密
一.登录机制 在项目中,我们可以大致得出一个登录的过程,主要分为 登录验证.登录保持.退出三个部分.登录验证是指客户端提供用户名和密码,向服务器提出登录请求,服务器判断客户端是否可以登录并向客户端确 ...
- LNMP环境+ 前后端项目部署+redis+redis扩展
LNMP 环境 (参照https://lnmp.org/install.html) wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz & ...
随机推荐
- Java12新特性 -- Shenandoah GC
Shenandoah 垃圾回收器是 Red Hat 在 2014 年宣布进行的一项垃圾收集器研究项目 Pauseless GC 的实现,旨在针对 JVM 上的内存收回实现低停顿的需求.该设计将与应用程 ...
- [LeetCode] 651. 4 Keys Keyboard 四键的键盘
Imagine you have a special keyboard with the following keys: Key 1: (A): Print one 'A' on screen. Ke ...
- c+11 std::condition_variable and mutex
multiple threads synchronization primitive: 多线程同步语义 多线程的同步语义是多线程编程的核心,线程之间通过同步语义进行通信,实现并发.C++ JAVA 中 ...
- linux中vi编辑器没有颜色
vi是没有颜色的,vim是有颜色的.可是系统中没有安装vim. 我们可以通过 rpm -qa |grep vim 看看系统中是否安装了下面3个rpm包,如果有就是安装了vim. 点击(此处)折叠或打开 ...
- [转帖]B树索引和位图索引的结构介绍
B树索引和位图索引的结构介绍 http://blog.itpub.net/12679300/viewspace-1174236/ 一 前言:? ROWID:包含键值的行的行ID,(查找块的最快方法, ...
- sync包 — 汇总
sync包 package main; import ( "time" "fmt" ) func main() { //time.Time代表一个纳秒精度的时间 ...
- vs中web api程序不包含适合于入口点的静态“Main”方法
步骤:选择该项目的属性--应用程序--输出类型--类库
- Java集合对比
1.array和ArrayList 的区别?1.1:ArrayList是Array的复杂版本1.2:数组不能扩容集合可以扩容1.3:存储的数据类型:Array只能存储相同数据类型的数据,而ArrayL ...
- 【LEETCODE】47、985. Sum of Even Numbers After Queries
package y2019.Algorithm.array; /** * @ProjectName: cutter-point * @Package: y2019.Algorithm.array * ...
- MAT实战:JVM内存溢出的定位与分析