Linux部署Django项目

因为lxml依赖的包如下:
复制代码 代码如下:
libxml2, libxml2-devel, libxlst, libxlst-devel, python-libxml2, python-libxslt
所以安装步骤如下:
第一步: 安装 libxml2
复制代码 代码如下:
$ sudo apt-get install libxml2 libxml2-dev

第二步: 安装 libxslt
复制代码 代码如下:
$ sudo apt-get install libxlst libxslt-dev

第三步: 安装 python-libxml2 和 python-libxslt
复制代码 代码如下:

$ sudo apt-get install python-libxml2 python-libxslt
第四步: 安装 lxml
复制代码 代码如下:
$ sudo easy_install lxml
四:部署上线
云服务器密码:****
nginx web服务器(负载均衡服务器)分发任务: 轮巡/最少链接

一、准备

云服务器 + 域名

二、部署基本流程

- 基本环境搭建(python虚拟环境)
- 数据库
- 项目上传
- 安装项目依赖
- 数据库数据迁移

- Nginx安装
- Nginx配置

- uWSGI安装
- uWSGI配置

- Nginx和uWSGI对接

LAMP: L(Linux) + A(Apache) + M(Mysql) + P(PHP)

三、连接服务器

方式: SSH、putty、XShell(Xftp)、VNC...

ssh root@xxx.xxx.xxx

四、虚拟环境

第一步,安装工具:
	pip install virtualenv
	pip install virtualenvwrapper

第二步,查看路径:
	type virtualenvwrapper.sh
	// 安装路径 /usr/local/bin/virtualenvwrapper.sh

第三步,配置用户级别的环境变量:
	vi ~/.bashrc
	// 添加
	export WORKON_HOME=~/.virtualenvs
	source /usr/local/bin/virtualenvwrapper.sh

第四步,创建虚拟目录:
	mkdir ~/.virtualenvs

第五步,刷新环境:
	source ~/.bashrc

第六步,创建虚拟环境
	mkvirtualenv python1811 -p /usr/bin/python3

第七步,执行安装(python3有欠缺的)
	apt update
	apt install python3-dev

五、安装数据库

第一步,安装
	apt install mysql-server

第二步,设置开机自启动:
	# 查看状态
	# service mysql status
	# systemctl status mysql.service

	# 设置开机自启动
	# systemctl enable mysql.service

	# 关闭开机自启动
	# systemctl disable mysql.service

	# systemctl start mysql.service
	# systemctl stop mysql.service
	# systemctl restart mysql.service

第三步,测试链接

六、上传项目

Xftp工具
scp命令
github
pycharm自带工具 [推荐使用]

在远程服务器中,创建好目录 [/var/www/AXF]
后续配置本地项目目录和远程目录同步

七、项目依赖

# 本地项目
生成项目依赖文件
pip freeze > requirements.txt

# 远程服务器 执行安装对应依赖
pip install -r requirements.txt

八、数据库迁移

# 本地数据库备份
mysqldump -uroot -p szpython1811axf > szpython1811axf.sql

# 远程服务器恢复【必须先创建对应的数据库】
mysql> create database szpython1811axf charset=utf8;
use szpython1811axf;
source /var/www/AXF/dir/szpython1811axf.sql

建议配置远程数据库!

十、测试项目启动

# 启动项目
python manage.py runserver 0.0.0.0:8000

# 打开浏览器,输入IP地址

xenial

十一、安装Nginx

## 下载key
wget http://nginx.org/keys/nginx_signing.key

## 添加key
sudo apt-key add nginx_signing.key

## 编辑文件 /etc/apt/sources.list
    deb http://nginx.org/packages/debian/ xenial nginx
    deb-src http://nginx.org/packages/debian/ xenial nginx

## 更新源
apt update

## 安装nginx
apt install nginx

## 设置开机自启动
systemctl enable nginx.service

## 检查Nginx安装是否成功,打开浏览器输入IP地址
    看到`Welcome to nginx!`

十二、Nginx配置

## 创建目录
mkdir /var/www/img

## 拷贝一个图片到上述目录中
    axf.png

## 拷贝一个 Nginx默认配置  【避免改错了】
    cp /etc/nginx/nginx.conf /etc/nginx/mynginx.conf

## mynginx.conf配置
http {
        #include /etc/nginx/conf.d/*.conf;
        #include /etc/nginx/sites-enabled/*;
        server {
                location /img {
                        alias /var/www/img;
                }
        }
}

## 杀死Nginx服务进程
pkill -9 nginx

## 查看Nginx进程    [确保已经杀死]
ps -ef | grep nginx

## 指定配置文件启动
nginx -c mynginx.conf
## 启动gunicorn
gunicorn -w 2 -b 127.0.0.1:5000 运行文件名称:Flask程序实例名(app)

## 查看Nginx进程    [确保是mynginx.conf启动的]
ps -ef | grep nginx

## 访问测试
http://112.74.55.3/img/axf.png

问题: 出现 open() /usr/share/nginx/mynginx.conf xxxxxx。通过软连接方式: ln -s /etc/nginx/mynginx.conf mynginx.conf

十三、uWSGI

uWSGI是python web服务器,实现WSGI协议,uwsgi协议,http协议…
nginx是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务

## 安装(虚拟环境中)
pip install uwsgi

## 添加配置文件 [项目中]
    uwsgi.ini

## 配置uwsgi.ini文件
    [uwsgi]

    # web服务器
    http=0.0.0.0:8090
    # 工程目录【服务端】
    chdir=/var/www/AXF
    # wsgi文件目录  相对工程目录,相对路径 [完整s/var/www/AXF/Pyton1811AXF/wsgi.py]
    wsgi-file=Pyton1811AXF/wsgi.py


    processes=1
    threads=1
    endable-threads=True
    pidfile=uwsgi.pid
    daemonize=uwsgi.log

## 通过uwsgi启动Django项目
    uwsgi --ini uwsgi.ini


## 测试是否启动成功
    http://112.74.55.3:8090/axf/

如果出问题了,一定要检查uwsgi.log

十四、Nginx+uWSGI对接

## 修改uWSGI配置文件
## http 替换 socket
    # web服务器
    # http=0.0.0.0:8090
    # 对接Nginx
    socket=0.0.0.0:8000



## 修改Nginx配置文件
http{
    server {
            location / {
                include /etc/nginx/uwsgi_params;
                # 代理
                uwsgi_pass 0.0.0.0:8000;
            }
            # xxxxx
    }
}

只要修改了配置文件,就需要杀死进程,重新启动!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 1. 安装Python和Django 首先需要在Linux系统上安装Python和Django。可以使用以下命令: ``` sudo apt-get update sudo apt-get install python3 sudo apt-get install python3-pip sudo pip3 install django ``` 2. 创建Django项目 使用以下命令创建一个Django项目: ``` django-admin startproject projectname ``` 其中,projectname是你的项目名称。 3. 配置数据库 在settings.py文件中配置数据库连接。可以使用MySQL、PostgreSQL等数据库。 4. 运行Django项目 使用以下命令运行Django项目: ``` python3 manage.py runserver ``` 5. 部署Django项目 可以使用Apache或Nginx等Web服务器来部署Django项目。具体步骤可以参考相关文档。 ### 回答2: Linux是一款自由开放源代码的操作系统,可以作为服务器系统进行部署Web应用程序。而随着越来越多的Web应用程序使用Django框架构建,部署Django项目Linux系统上也成为了一种非常重要的技术。 以下是几个部署Django项目Linux系统上的步骤: 1. 安装所需软件和依赖项 在Linux系统上,需要安装Python解释器、Django框架、Web服务器软件(Nginx或Apache)等所需软件和依赖项。具体安装可使用Linux系统自带的包管理器进行安装。 2. 创建Django项目并配置settings 使用Django提供的命令创建Django项目,然后修改settings.py文件,根据实际需求配置数据库、静态文件路径、媒体文件路径等信息。 3. 配置Web服务器 选择合适的Web服务器软件(Nginx或Apache),并进行配置。配置需考虑到静态文件和媒体文件的处理方式,同时根据实际需求设置代理等。 4. 部署Django项目Django项目的代码部署到服务器指定目录中,并根据实际需求进行相关配置,如修改静态文件路径、媒体文件路径等。 5. 启动Web服务器和Django项目 启动Web服务器和Django项目,在浏览器中访问配置的地址,检查是否正常运行。 总之,部署Django项目Linux系统上需要经历多个步骤和注意事项。建议在实践前进行充分准备和学习,并进行适当的测试和调试工作,以确保部署的稳定和可靠性。 ### 回答3: 在 Linux 操作系统上部署 Django 项目,需要进行如下步骤: 1. 安装 Linux 操作系统:选择一种 Linux 操作系统,例如:Ubuntu、CentOS 等,并进行安装。可以选择安装服务器版本或者桌面版本。 2. 安装 Python 环境:Django 是基于 Python 语言开发的,所以需要先安装 Python 环境。可以通过命令行输入 `python -V` 来查看已安装的 Python 版本。 3. 安装 Django:在 Python 环境下安装 Django,可以通过 `pip install django` 命令来进行安装。注意,如果你的 Django 项目使用了某些第三方库,则也需要同样地安装它们。 4. 配置项目环境:新建 Django 项目,进入项目目录,并修改 settings.py 文件中的数据库设置、静态文件设置等。 5. 启动 Django 项目:使用命令 `python manage.py runserver` 来启动 Django 项目。 6. 部署 Django 项目:将 Django 项目部署到服务器上,需要使用 WSGI 工具。使用 WSGI 工具将 Django 项目转换为可被服务器执行的 Python 应用程序。最常用的 WSGI 工具是 Gunicorn 和 uWSGI。 7. 使用 Nginx 或 Apache 配置反向代理来访问 Django 项目。通过反向代理能够实现将 Django 项目和服务器之间的访问统一在一个端口上面,同时还能提高网站访问的速度和安全性。常用的反向代理服务器有 Nginx 和 Apache。 总之,在使用 Linux 操作系统部署 Django 项目之前,需要先确定本地开发环境、Python 版本、Django 版本以及所需第三方库。然后,根据实际情况进行配置环境。最后,使用 WSGI 工具将 Django 项目部署到服务器上,并配置反向代理,完成部署

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值