Djangoプロジェクトのデプロイ(1)

Djangoプロジェクトのデプロイ:Linux(centos7)+ Nginx + Uwsgi + Python3 + MySQL + RedisメモはLiuJianping
先生からのものです。自習と自己使用、侵害の削除

在windows系统中开发的django项目部署到centos系统中 并且可以在浏览器中可以访问项目
详细步骤(下面步骤都是ROOT权限执行):
1)	先安装python
2)	安装pip
3)	安装django
4)	把项目从windows系统拷贝到centos系统中django框架所在的项目的路径  通过命令行
5)	先通过django自带的web服务器运行项目  python manage.py runserver 0.0.0.0:8000   X
6)	安装uwsgi web服务器
7)	安装  web服务器  nginx (小巧 性能特别高  10000)   
8)	通过nginx来启动django项目

Django + uWsgi + Nginxの原理の予備的理解

ここに画像の説明を挿入

Nginx 是一个反向代理服务器,负责静态资源处理、动态请求转发以及结果的回复。

uWSGI 是一个Web服务器,负责接收 Nginx 请求,转发并处理后发给 Django 以及
接收 Django 返回信息转发给 Nginx。uWSGI是 实现了uwsgi协议,WSGI规范和HTTP协议的 一个C语言实现的软件。

Django 是一个Web应用框架,在收到请求后进行逻辑和数据处理,然后响应结果给 uWSGI 服务器。
通信关系:

ここに画像の説明を挿入

1.システムソフトウェアパッケージを更新し、ソフトウェア管理パッケージと考えられる依存関係をインストールします

yum update -y
yum -y groupinstall "Development tools"
yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel

2. Pythonをインストールします(保存場所:例:/ home / soft)

https://www.python.org/ftp/python/ Webサイトにログインしてすべてのバージョンを表示し、ダウンロードする適切なバージョンを選択します

wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tgz
tar -zxvf Python-3.5.4.tgz
cd Python-3.5.4

ここに画像の説明を挿入

#编译安装
./configure --prefix=/usr/local/python3
make && make install

ここに画像の説明を挿入
make && make install後の結果:インストール
ここに画像の説明を挿入
後のpyディレクトリのファイルコンテンツを表示します
ここに画像の説明を挿入
ここに画像の説明を挿入

#创建软连接
ln -s /usr/local/python3/bin/python3.5 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.5 /usr/bin/pip3
#查看Python3和pip3安装情况
python3  --version
pip3    --version

ここに画像の説明を挿入
LinuxソフトリンクはWindowsのショートカットに相当し、Windowsの環境変数を参照することもできます。Python3を直接使用して命令を操作できます。それ以外の場合は、コンテンツの大きな文字列/usr/local/python3/bin/python3.5を入力する必要があります。
現時点では、python3-versionは/usr/local/python3/bin/python3.5--versionと同等です。

3つ目は、virtualenvをインストールして、各プロジェクトで使用される拡張パッケージを保存することです。

pip3 install virtualenv
#建立软链接
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
#安装成功在根目录下建立两个文件夹,主要用于存放env和网站文件的。
mkdir -p /data/env
mkdir -p /data/wwwroot

4. / data / env /に切り替えて、指定したバージョンの仮想環境を作成します。

cd /data/env
virtualenv --python=/usr/bin/python3 pyweb

ここに画像の説明を挿入

#然后进入/data/env/pyweb/bin ,启动虚拟环境:
cd /data/env/pyweb/bin
source activate

#マークの位置に注意してください。(pyweb)が表示され、仮想環境に正常に入力されたことを示します。
ここに画像の説明を挿入

5、仮想環境にpython3を使用してdjangoとuwsgiをインストールします

ここに画像の説明を挿入

# (如果用于生产的话,则需要指定安装和你项目相同的版本)
pip3 install django
#切换到网站目录/data/wwwroot,把windows系统中的Django项目拷贝到linux系统的存放项目的路径中(可用rz命令来拷贝 )
cd /data/wwwroot 
#上传py项目的zip包,然后解压

ここに画像の説明を挿入
現時点では、pyプロジェクトのパスは/ data / wwwroot / cmsで
ここに画像の説明を挿入
あり、manager.pyをアップロードする必要があります
ここに画像の説明を挿入

6、djangoに付属のWebサーバーを介してプロジェクトを実行します

エラー:
ここに画像の説明を挿入
上記のエラーが発生しました。考えられる理由は、djangoが現在インストールされていないことです。再操作は
python3manage.py runserver 0.0.0.0:8000にすることができます
ここに画像の説明を挿入
この時点で、別のエラーが報告され、pymysqlのインストールを促します
ここに画像の説明を挿入

この時点でも、python3 manage.py runserver0.0.0.0:8000です。
(base.pyを変更するための)
ここに画像の説明を挿入
エラー別のエラーが再び発生します:
ここに画像の説明を挿入

修復リファレンス:https:
ここに画像の説明を挿入
//blog.csdn.net/weixin_45476498/article/details/100098297コメントbase.pyの内容を変更した、python3 manage.py runserver0.0.0.0:8000を再度実行します。mysqlがまだインストールされていないため、まだエラーがあります。まず、パブリックネットワークのmysqlをポイントし、プロジェクトを最初に実行します。
ここに画像の説明を挿入

ここに画像の説明を挿入
settings.pyでデータベースのホストを変更します。これは、パブリックネットワークアドレス47.100.xxx.xxxluzancmsを指します
ここに画像の説明を挿入

ここに画像の説明を挿入
ここに画像の説明を挿入
settings.pyのallowed_hostsを変更します
ここに画像の説明を挿入

ファイアウォールで許可されているポートを追加します
https://blog.csdn.net/weixin_34332905/article/details/92673905

#防火墙端口、开启的命令
firewall-cmd --list-ports 

一連のエラーを処理した後、再実行してください
ここに画像の説明を挿入

192.168.1.186:8000/admin/loginにアクセスします。この時点で、Django自身のWebサーバーはpyプロジェクトを正常に実行できます。ここに画像の説明を挿入
ここに画像の説明を挿入

手順の概要:

启动虚拟环境:source activate
8000端口一定要开启
版本的问题注释一些代码
进入项目的根目录python3 manage.py runserver o.o.o.o:8000

この展開メモプロセスでは、エラーレポートとその処理方法も記録され、指定されたerrorキーワードを使用したオンライン処理方法で問題が解決されます。

終わり

おすすめ

転載: blog.csdn.net/Nightwish5/article/details/111475126