Ubuntu部署服务器详细过程

本地部署:
1.先把项目中的settings.py中的DEBUG改为true
ALLOWED_HOSTS = ['
']

settings.png

2.在项目下创建一个uwsgi.ini,并插入以下数据:


uwsgi.png

3.进入虚拟环境,启动一下uwsgi,如果不确定有没有启动的话查看一下进程,这时会在本地生成一个uwsgi.log日志

uwsgi --ini uwsgi.ini    启动uwsgi
ps -ef | grep uwsgi      查看进程

4.这时访问博客,会出现数据但没有css样式,这时需要nginx提供静态资源

sudo apt install nginx  下载nginx

打开终端进入nginx

cd /etc/nginx

里面会有一个nginx.conf

vi nginx.conf
#####动态请求

在http{ }中插入数据

server {
              listen 80;
              server_name localhost;
     
              #动态请求
              location / {
                  include uwsgi_params;
                  uwsgi_pass 127.0.0.1:8000;
              }  

保存并退出
杀掉nginx的全部进程

nginx stop 或killall -9 nginx 关闭

重启nginx

nginx restart

把uswgi.ini中的http注掉,把socket打开

重启uwsgi

killall -9 uwsgi
uwsgi --ini uwsgi.ini 

访问127.0.0.1:80,但依然没有css

静态请求

把所有静态集合在一起
注掉STATIC_URL = '/static/'下的数据
在项目下执行

python3 managepy collectstatic

更改nginx配置

server {
              listen 80;
              server_name localhost;
     
              #动态请求
              location / {
                  include uwsgi_params;
                  uwsgi_pass 127.0.0.1:8000;
              }
              #静态
             location /static {
                alias /home/yyh/桌面/projects/muzhuang/static
     
              }
        }  

杀掉nginx

kill -9 nginx

重启nginx

nginx restart

杀掉uwsgi,并启动

uwsgi --stop uwsgi.pid
uwsgi --ini uwsgi.ini

刷新浏览器,即可出现

配置器配置

1.打开腾讯云
2.重置密码
3.打开终端,登录Ubuntu

ssh Ubuntu@腾讯云网站

4.更新

sudo apt update
sudo apt upgrade

期间出现的选择一路回车
6.安装pip

sudo apt install python3-pip

7.安装虚拟环境

sudo pip3 install virtualenv

可能会出错:分析原因
locale是用来设置软件运行的语言环境,所以语言环境设置有问题
解决故障 复制这三条 命令 一条一条输入 在登入云服务器
重新设置语言环境,最简单的解决办法:
第一条
echo "export LC_ALL=en_US.UTF-8" >> /home/XXX/.bash_profile 代表(特定用户)
第二条
echo "export LC_ALL=en_US.UTF-8" >> /etc/profile 代表(所有用户)
第三条
exit

重新登录服务器
8.安装扩展包

sudo pip3 install virtualenvwrapper

9.配置虚拟环境
配置虚拟环境

vi .bashrc

复制这三条命令到文档

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

激活

source .bashrc

10.创建虚拟环境
11.安装数据库

 sudo apt-get install mysql-server mysql-client

12.打开一个新的终端,导出本地数据库,与依赖包

mysqldump -uroot -p 1807_blog_db > /home/yyh/桌面/blog.sql
pip freeze > /home/yyh/桌面/requirements.txt

13.想任何办法把数据库和依赖文件还有源码 上传到服务器 git ftp scp

scp -r blog.sql [email protected]:/home/ubuntu
scp -r requirements.txt [email protected]:/home/ubuntu
scp -r 项目名 [email protected]:/home/ubuntu

上传源码时推荐压缩
13.进入虚拟环境
安装依赖包

pip install -r requirements.txt

报错的话试试这个

export LC_ALL=en_US.UTF-8

14.在云端创建一个和本地数据库一样的库,并导入数据

source  /xxx/xx/xx/blog.sql

15.安装nginx 安装uwsgi

sudo apt-get install nginx
pip  install uwsgi

16.配置uwsgi和nginx 和本地部署一样
17.启动uwsgi

uwsgi --ini uwsgi.ini 启动
uwsgi --stop uwsgi.pip 关闭
ps -ef | grep uwsgi 查看进程  如果只有一个的话说明没有启动成功

18.启动nginx

/etc/init.d/nginx start 启动
/etc/init.d/nginx stop 或killall -9 nginx 关闭
/etc/init.d/nginx restart 重启
ps -aux | grep nginx 查看进程

如果只是更改项目内容的话,重新压缩项目,导入项目,重启nginx,uwsgi;如果添加项目里的数据的话需要重新导入数据库并重启nginx和uwsgi

你可能感兴趣的:(Ubuntu部署服务器详细过程)