Django云端部署教程

要在云端部署的话你需要先买一个云服务器,购买云服务器的话可以去买腾讯云、阿里云或者京东云等等进行购买。
腾讯云链接网址:https://cloud.tencent.com/?fromSource=gwzcw.234976.234976.234976
阿里云链接网址:https://www.aliyun.com/?utm_content=se_1000301881
我使用的服务器是腾讯云,购买云服务器的步骤如下:
首先点击页面窗口左上角的产品,然后在点击云服务器,然后会进入如图所示的页面

image.png

然后点击立即选购进入以下页面
image.png

然后根据自己的需求进行购买。
购买完成以后点击,如果此时处在已登录的状态就点击右上角的人物图标,进入控制台界面,如果没有登录,那就先点击右上角的登录按钮进行登录
image.png

进入控制台页面后再点击左上角的产品→云服务器进入云服务器界面如下图
image.png

然后你需要先重置一下密码,现在前面的选择框里打上√然后点击重置密码就会弹出来一个重置密码的界面,如下图所示
image.png

然后根据提示进行重置密码,信息输入完成之后,点击下一步,然后他就会让你强制重启,选择确定即可
重置密码完成后,服务器的状态会变成正在重启,这时候不要关闭界面等待几分钟,然后等服务器的状态变为运行中的时候,该操作就完成了

下面我以腾讯云为例演示一下部署的全部过程
首先先打开终端,然后输入以下命令,然后输入密码,进入远程连接


image.png

然后进行以下步骤:

第一步:分别执行 sudo apt update 和 sudo apt upgrade

image.png

第二步:安装pip sudo apt install python3-pip

image.png

第三步:安装虚拟环境 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

第四步:sudo pip3 install virtualenvwrapper

第五步:配置虚拟环境

    vi .bashrc
image.png

复制这三条命令到文档
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

    然后输入命令进行激活
    source .bashrc

第六步:创建虚拟环境,命令为mkvirtualenv 后面加上你要创建的环境名称

image.png

第七步:安装数据库 sudo apt-get install mysql-server mysql-client

第八步(本地):导出本地数据库 mysqldump -uroot -p 1807_blog_db > /Users/xiaoyuan/Desktop/blog.sql(注意:你需要重新打开一个终端,并且之前的那个远程连接的终端也不要关闭)

第九步(本地):导出本地依赖第三方 pip freeze > requirements.txt

第十步:想任何办法把数据库和依赖文件还有源码 上传到服务器 我这里推荐的方法有三个 git、ftp和scp

第十一步:在云端创建一个和本地数据库一样的库,导入数据 source /home/ubuntu/blog.sql(注意此条命令是在数据库里输入)

第十二步:安装nginx sudo apt-get install nginx

以及安装uwsgi pip install uwsgi

安装完之后可以输入命令 pip list 进行查看是否下载完成

第十三步:配置uwsgi和nginx

配置uwsgi步骤:


image.png

进入以下页面,输入以下内容,然后保存退出


image.png

然后输入以下命令,先杀进程再启动uwsgi
image.png

配置Nginx步骤:
输入命令 sudo vi /etc/nginx/nginx.conf 进去以下界面,然后保存退出
写到http括号下
server {
listen 80;
server_name 127.0.0.1;

          #动态请求
          location / {
              include uwsgi_params;
              uwsgi_pass 127.0.0.1:8001;
          }
          #静态
         location /static {
            alias /Users/xiaoyuan/Desktop/py_projects/MyBlog/static ;
 
          }
    }  
image.png

然后输入以下命令,先杀进程再启动nginx


image.png

第十四步:大功完成

image.png

你可能感兴趣的:(Django云端部署教程)