Vue+Djangoプロジェクトの展開の詳細
ローカルプロジェクトの設定
1 luffy/settings/dev.pyをコピーします。prop.pyです。
luffy/settings/prop.pyの中で以下の項目を修正します。
(1)allow_hosts
14行目
変えなくてもいいです。サーバーでテストするために便利です。
6行目
バックエンドサーバのドメイン名とポートを設定します。
1インストールに必要なソフトウェア
(1)mysqlの取り付け
パスワードの設定と初期設定は自分で解決してください。
(2)データベースの起動
yumを使ってインストールして起動することができます。簡単で乱暴です。
最新版を使うために、解凍してインストールします。
その方法が好きならいいです。
(1)ダウンロード
vim redis.com.
69行bind 127.1.0.1
ビッド0.0.0に変更
(4)Redisを起動し、楽屋に置く
ただ/opt/luffyweb/dist/ファイルが有用で、
distは先端ルートディレクトリとして使用します。他のものは不要です。
5仮想環境を作成する
(1)仮想環境の作成
私のdjangoは2.0バージョンを使っています。pymysqlのせいでソースを間違えて報告する必要はありません。
luffy/docs/requirements.txtの中のxadminの行を削除します。
MySQLデータベースとredisを起動してください。
6 uwsgi配置
(1)uwsgi.iniの構成内容は以下の通りである。
(3)uwsgiを起動し、MySQLデータベースとredisを起動することを覚えている。
(1)プロファイルの作成
(2)inxプロファイルの文法を確認する
1 luffy/settings/dev.pyをコピーします。prop.pyです。
luffy/settings/prop.pyの中で以下の項目を修正します。
(1)allow_hosts
ALLOWED_HOSTS = [
'api.youdomain.com',
]
(2)ドメイン別ホワイトリスト
CORS_ORIGIN_WHITELIST = (
#
"www.youdomain.com",
# api
"api.youdomain.com"
)
(3)Alipayコンピュータのウェブサイトの支払いの配置情報
ALIPAY_APPID = "xxxxxxx"
APP_NOTIFY_URL = None
ALIPAY_DEBUG = True
# APIPAY_GATEWAY="https://openapi.alipay.com/gateway.do"
APIPAY_GATEWAY = "https://openapi.alipaydev.com/gateway.do"
ALIPAY_RETURN_URL = "http://www.youdomain.com/success"
ALIPAY_NOTIFY_URL = "http://api.youdomain.com:8000/payments/success"
2 luffy/wsgi.pyファイルを修正する14行目
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "luffy.settings.prop")
3 manage.pyファイルを修正する変えなくてもいいです。サーバーでテストするために便利です。
6行目
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "luffy.settings.prop")
4 pipにインストールされているパッケージのリストをエクスポートします。
freeze > docs/requirements.txt
5静的ファイルを収集する
python manage.py collectstatic
6提出・送付
git add .
git commit -m " "
git push -u origin master
7先端配置変更src/settings.jsバックエンドサーバのドメイン名とポートを設定します。
Host:http://api.youdomain.com:80,
8構築
npm run build
9提出・送付
git add .
git commit -m " "
git push -u origin master
サーバ上の設定1インストールに必要なソフトウェア
yum install python36-pip.noarch python36.x86_64 python36-devel.x86_64 nginx git gcc -y
pip3 install virtualenv -i https://pypi.douban.com/simple
注意:uwsigはpip方式で設置したほうがいいです。
pip3 install uwsgi -i https://pypi.douban.com/simple
2 mysqlデータベース関連配置(1)mysqlの取り付け
yum install mysql-server -y
または使用容器パスワードの設定と初期設定は自分で解決してください。
(2)データベースの起動
systemctl start mysqld
(3)新規データベースluffy
create database luffy;
(4)データの導入
mysql -uroot -pmysql luffy < luffy.sql
3フレディインストールと配置yumを使ってインストールして起動することができます。簡単で乱暴です。
最新版を使うために、解凍してインストールします。
その方法が好きならいいです。
(1)ダウンロード
cd /opt/
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
(2)圧力を解き、取り付ける
tar -xf redis-5.0.5.tar.gz
cd /opt/redis-5.0.5
make && make install
(3)プロファイルの変更vim redis.com.
69行bind 127.1.0.1
ビッド0.0.0に変更
(4)Redisを起動し、楽屋に置く
nohup redis-server redis.conf &
4先端項目を引く
cd /opt/
git clone https://gitee.com/SunHarvey/luffyweb.git
フロントエンドプロジェクトのパスは/opt/luffyweb/ただ/opt/luffyweb/dist/ファイルが有用で、
distは先端ルートディレクトリとして使用します。他のものは不要です。
5仮想環境を作成する
(1)仮想環境の作成
cd /opt/
virtualenv luffy
つまり仮想環境パスは/opt/luffy/
cd /opt/luffy/
(2)仮想環境をアクティブにする
source /opt/luffy/bin/activate
(3)バックエンド項目を引き出す
git clone https://gitee.com/SunHarvey/luffy.git
注:プロジェクトのルートパスは/opt/luffy/luffy/
cd luffy
以下のファイルが見られます。
docs luffy manage.py scripts static
(4)pipの設置に必要なカバン私のdjangoは2.0バージョンを使っています。pymysqlのせいでソースを間違えて報告する必要はありません。
luffy/docs/requirements.txtの中のxadminの行を削除します。
pip3 install https://codeload.github.com/sshwsfc/xadmin/zip/django2
pip3 instal -r /opt/luffy/luffy/docs/requirements.txt
(5)runserverでdjangoプロジェクトを起動したら正常かどうかを確認してください。MySQLデータベースとredisを起動してください。
python manage.py runserver
エラーがないなら続けて、エラーを報告したらヒントによって除外してください。6 uwsgi配置
(1)uwsgi.iniの構成内容は以下の通りである。
vim /opt/luffy/luffy/uwsgi.ini
[uwsgi]
# uwsgi , , ,
uid = nginx
gid = nginx
# nginx ,Django
socket=127.0.0.1:8000
# web ,Django
#http=0.0.0.0:8080
#
chdir=/opt/luffy/luffy
# wsgi.py ,
wsgi-file=luffy/wsgi.py
#
processes=1
#
threads=2
# uwsgi
master=True
#
pidfile=uwsgi.pid
# , uwsgi , 。 runserver
daemonize=uwsgi.log
#
virtualenv=/opt/luffy/
# clear environment on exit #
vacuum = true
(2)ファイル所有者を変更し、rootで起動するとこのステップを無視できます。
chown -R nginx.nginx /opt/luffy/luffy/
inxを現在ログインしているユーザ名に変えてもいいです。他のユーザもいいです。(3)uwsgiを起動し、MySQLデータベースとredisを起動することを覚えている。
uwsgi --ini /opt/luffy/luffy/uwsgi.ini
7 nginx設定(1)プロファイルの作成
vim /etc/nginx/conf.d/your.conf
# uwsgi ,
upstream luffy {
server 127.0.0.1:8000;
}
# api
server {
listen 80;
server_name api.youdomain.com;
location / {
include uwsgi_params;
uwsgi_pass luffy;
}
# css、js
location ~ .*\.(css|js)$ {
root /opt/luffy/luffy/;
}
}
#
server {
listen 80;
# , !nginx 80 n !
server_name youdomain.com www.youdomain.com;
location / {
# /opt/luffyweb/dist/ npm run build
root /opt/luffyweb/dist/;
index index.html;
try_files $uri $uri /index.html;
}
}
これは最も基本的な構成であり、他の最適化構成はこれ以上説明しない。(2)inxプロファイルの文法を確認する
nginx -t
(3)inxの起動
systemctl start nginx
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。