このブログ投稿では、NginxとuWSGIを使用してCentosVPSにQuokkaをインストールする方法を紹介します。 Quokkaは、FlaskWebフレームワークに基づくオープンソースの柔軟なコンテンツ管理システムです。 Quokkaを使用して、Webポータルを構築したり、ブログを公開したり、ドキュメント管理システムとして使用したりできます。既存のQuokkaモジュールを使用すると、eコマースアプリケーションまたは資金調達Webサイトを作成できます。このガイドは他のLinuxVPSシステムでも機能するはずですが、Centos7VPS用にテストおよび作成されています。
SSH経由でVPSにログイン
ssh root@vps
EPELリポジトリをインストールする
CentOS VPSにEPELリポジトリをインストールするには、次のコマンドを実行します。
[root]$ rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
システムを更新し、必要なパッケージをインストールします
[root]$ yum -y update [root]$ yum -y install git python-pip python-virtualenv pcre-devel python-imaging python-devel libjpeg-turbo-devel make gcc
新しいシステムユーザーを作成する
Quokkaの新しいユーザーを作成します:
[root]$ adduser --comment 'Quokka User' --home-dir /home/quokka quokka
[root]$ chmod 755 /home/quokka
MongoDBをインストールする
公式のMongoDBリポジトリから最新のMongoDB2.6パッケージをインストールします。
/etc/yum.repos.d/mongodb-org-2.6.repo
を作成します ファイルを作成し、次の行を挿入します:
[root]$ nano /etc/yum.repos.d/mongodb-org-2.6.repo
[mongodb-org-2.6] name=MongoDB 2.6 Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/ gpgcheck=0 enabled=1
ファイルを保存したら、次のコマンドを使用してMongoDBをインストールします。
[root]$ yum -y install mongodb-org
最後に、起動時にMongoDBを起動して有効にします:
[root]$ chkconfig mongod on [root]$ systemctl start mongod
Python仮想環境を作成し、Quokkaソースコードのクローンを作成します
次のコマンドは、quokkaユーザーとして実行されます。 quokkaユーザー実行に切り替えるには:
[root]$ su - quokka
次のコマンドを使用して新しいvirtualenvを作成します
[quokka]$ virtualenv quokka-env
Quokkaのソースコードを/home/quokka/quokka-env/quokka
に複製します ディレクトリ。
[quokka]$ cd quokka-env [quokka]$ git clone https://github.com/quokkaproject/quokka
新しいvirtualenvに切り替えます
[quokka]$ source ~/quokka-env/bin/activate
次のコマンドですべての依存関係をインストールします:
(quokka-env)[quokka]$ cd quokka (quokka-env)[quokka]$ pip install -r requirements/requirements.txt
インストールにサンプルデータを入力する場合は、次を実行します:
(quokka-env)[quokka]$ /home/quokka/quokka-env/bin/python manage.py populate
NginxとuWSGIをインストールして構成する
NginxはCentOS7ではデフォルトで使用できないため、公式のNginxリポジトリを使用します:
[root]$ rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
Nginxをインストールするには:
[root]$ yum -y install nginx
次に、新しいNginxサーバーブロックを作成します:
[root]$ nano /etc/nginx/conf.d/YOUR_QUOKKA_DOMAIN.conf
server { server_name YOUR_QUOKKA_DOMAIN; client_body_in_file_only clean; client_body_buffer_size 64K; client_max_body_size 40M; sendfile on; send_timeout 300s; location ~ ^/(static|mediafiles)/ { root /home/quokka/quokka-env/quokka/quokka; location ~* ^.+.(py|pyc|sh|bat|ini|pot|git)$ {deny all; } expires 7d; } location / { uwsgi_pass unix:/home/quokka/quokka-env/quokka/etc/logs/quokka.socket; include /etc/nginx/uwsgi_params; uwsgi_param UWSGI_SCHEME $scheme; uwsgi_param SERVER_SOFTWARE nginx/$nginx_version; } }
pipを使用してuWSGIをインストールする
pip install --upgrade uwsgi
Quokkaのuwsgi構成ファイルを作成します:
mkdir /etc/uwsgi.d/
[root]$ nano /etc/uwsgi.d/quokka.ini
[uwsgi] chmod-socket = 666 virtualenv = /home/quokka/quokka-env mount = /=wsgi:application chdir = /home/quokka/quokka-env/quokka socket = /home/quokka/quokka-env/quokka/etc/logs/%n.socket stats = /home/quokka/quokka-env/quokka/etc/logs/%n.stats.socket logto = /home/quokka/quokka-env/quokka/etc/logs/%n.log workers = 4 uid = quokka gid = quokka max-requests = 2000 limit-as = 512 reload-on-as = 256 reload-on-rss = 192
選択したエディターを開き、Quokka用の新しいsystemdサービスを作成します:
[root]$ nano /etc/systemd/system/uwsgi.service
次のコード行を追加します:
[Unit] Description=uWSGI Emperor Service After=syslog.target [Service] ExecStart=/usr/bin/uwsgi --master --die-on-term --emperor /etc/uwsgi.d ExecReload=/bin/kill -HUP $MAINPID KillSignal=SIGINT Restart=always Type=notify StandardError=syslog NotifyAccess=all [Install] WantedBy=multi-user.target
起動時にuWSGIを起動して有効にします:
[root]$ systemctl enable uwsgi [root]$ systemctl start uwsgi
起動時にNginxを起動して有効にします:
[root]$ systemctl enable nginx [root]$ systemctl start nginx
それでおしまい。 Quokkaが正常にインストールされました。アクセスするには、http://YOUR_QUOKKA_DOMAIN/
を開きます ブラウザで。 Quokkaの詳細については、Quokkaの公式Webサイトを参照してください。
もちろん、Linux VPSホスティングサービスのいずれかを使用している場合は、これを行う必要はありません。その場合は、専門のLinux管理者にセットアップを依頼するだけです。 24時間年中無休でご利用いただけます。リクエストはすぐに処理されます。
PS 。この投稿が気に入った場合は、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。