In questo post del blog ti mostreremo come installare Quokka su un Centos VPS con Nginx e uWSGI. Quokka è un sistema di gestione dei contenuti flessibile open source basato sul framework web Flask. Puoi utilizzare Quokka per creare un portale web, pubblicare un blog o utilizzarlo come sistema di gestione dei documenti. Con i moduli Quokka esistenti puoi creare un'applicazione di e-commerce o un sito web di raccolta fondi. Questa guida dovrebbe funzionare anche su altri sistemi VPS Linux, ma è stata testata e scritta per Centos 7 VPS.
Accedi al tuo VPS tramite SSH
ssh root@vps
Installa il repository EPEL
Per installare il repository EPEL sul tuo CentOS VPS, esegui semplicemente:
[root]$ rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
Aggiorna il sistema e installa i pacchetti necessari
[root]$ yum -y update [root]$ yum -y install git python-pip python-virtualenv pcre-devel python-imaging python-devel libjpeg-turbo-devel make gcc
Crea un nuovo utente di sistema
Crea un nuovo utente per Quokka:
[root]$ adduser --comment 'Quokka User' --home-dir /home/quokka quokka
[root]$ chmod 755 /home/quokka
Installa MongoDB
Installeremo gli ultimi pacchetti MongoDB 2.6 dal repository MongoDB ufficiale.
Crea un /etc/yum.repos.d/mongodb-org-2.6.repo
file e inserisci le seguenti righe:
[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
Dopo aver salvato il file, installa MongoDB con il seguente comando:
[root]$ yum -y install mongodb-org
Infine avvia e abilita MongoDB all'avvio:
[root]$ chkconfig mongod on [root]$ systemctl start mongod
Crea un ambiente virtuale Python e clona il codice sorgente di Quokka
I seguenti comandi vengono eseguiti come utente quokka. Per passare all'esecuzione utente di quokka:
[root]$ su - quokka
Crea un nuovo virtualenv usando il seguente comando
[quokka]$ virtualenv quokka-env
Clona il codice sorgente di Quokka in /home/quokka/quokka-env/quokka
directory.
[quokka]$ cd quokka-env [quokka]$ git clone https://github.com/quokkaproject/quokka
Passa al nuovo virtualenv
[quokka]$ source ~/quokka-env/bin/activate
Installa tutte le dipendenze con:
(quokka-env)[quokka]$ cd quokka (quokka-env)[quokka]$ pip install -r requirements/requirements.txt
Se si desidera popolare l'installazione con dati di esempio, eseguire:
(quokka-env)[quokka]$ /home/quokka/quokka-env/bin/python manage.py populate
Installa e configura Nginx e uWSGI
Nginx non è disponibile per impostazione predefinita in CentOS 7, quindi utilizzeremo il repository Nginx ufficiale:
[root]$ rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
Per installare Nginx esegui:
[root]$ yum -y install nginx
Quindi, crea un nuovo blocco del server 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; } }
Installa uWSGI usando pip
pip install --upgrade uwsgi
Crea file di configurazione uwsgi per Quokka:
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
Apri il tuo editor preferito e crea un nuovo servizio systemd per Quokka:
[root]$ nano /etc/systemd/system/uwsgi.service
e aggiungi le seguenti righe di codice:
[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
Avvia e abilita uWSGI all'avvio:
[root]$ systemctl enable uwsgi [root]$ systemctl start uwsgi
Avvia e abilita Nginx all'avvio:
[root]$ systemctl enable nginx [root]$ systemctl start nginx
Questo è tutto. Hai installato correttamente il tuo Quokka. Per accedervi, apri http://YOUR_QUOKKA_DOMAIN/
nel tuo browser. Per ulteriori informazioni su Quokka, fare riferimento al sito Web ufficiale di Quokka.
Ovviamente non devi fare nulla di tutto ciò se utilizzi uno dei nostri servizi di hosting VPS Linux, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di configurarlo per te. Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.
PS . Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.