Dans cet article de blog, nous vous montrerons comment installer Quokka sur un VPS Centos avec Nginx et uWSGI. Quokka est un système de gestion de contenu flexible open source basé sur le framework Web Flask. Vous pouvez utiliser Quokka pour créer un portail Web, publier un blog ou l'utiliser comme système de gestion de documents. Avec les modules Quokka existants, vous pouvez créer une application de commerce électronique ou un site Web de collecte de fonds. Ce guide devrait également fonctionner sur d'autres systèmes VPS Linux, mais a été testé et écrit pour un VPS Centos 7.
Connectez-vous à votre VPS via SSH
ssh root@vps
Installer le référentiel EPEL
Pour installer le référentiel EPEL sur votre VPS CentOS, exécutez simplement :
[root]$ rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
Mettre à jour le système et installer les packages nécessaires
[root]$ yum -y update [root]$ yum -y install git python-pip python-virtualenv pcre-devel python-imaging python-devel libjpeg-turbo-devel make gcc
Créer un nouvel utilisateur système
Créez un nouvel utilisateur pour Quokka :
[root]$ adduser --comment 'Quokka User' --home-dir /home/quokka quokka
[root]$ chmod 755 /home/quokka
Installer MongoDB
Nous installerons les derniers packages MongoDB 2.6 à partir du référentiel officiel MongoDB.
Créez un /etc/yum.repos.d/mongodb-org-2.6.repo
fichier et insérez les lignes suivantes :
[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
Une fois que vous avez enregistré le fichier, installez MongoDB avec la commande suivante :
[root]$ yum -y install mongodb-org
Enfin, démarrez et activez MongoDB au démarrage :
[root]$ chkconfig mongod on [root]$ systemctl start mongod
Créer un environnement virtuel Python et cloner le code source Quokka
Les commandes suivantes sont exécutées en tant qu'utilisateur quokka. Pour passer à l'exécution de l'utilisateur quokka :
[root]$ su - quokka
Créez un nouveau virtualenv en utilisant la commande suivante
[quokka]$ virtualenv quokka-env
Clonez le code source de Quokka dans /home/quokka/quokka-env/quokka
répertoire.
[quokka]$ cd quokka-env [quokka]$ git clone https://github.com/quokkaproject/quokka
Basculer vers le nouveau virtualenv
[quokka]$ source ~/quokka-env/bin/activate
Installez toutes les dépendances avec :
(quokka-env)[quokka]$ cd quokka (quokka-env)[quokka]$ pip install -r requirements/requirements.txt
Si vous souhaitez remplir l'installation avec des exemples de données, exécutez :
(quokka-env)[quokka]$ /home/quokka/quokka-env/bin/python manage.py populate
Installer et configurer Nginx et uWSGI
Nginx n'est pas disponible par défaut dans CentOS 7, nous allons donc utiliser le référentiel Nginx officiel :
[root]$ rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
Pour installer Nginx, exécutez :
[root]$ yum -y install nginx
Ensuite, créez un nouveau bloc serveur 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; } }
Installez uWSGI en utilisant pip
pip install --upgrade uwsgi
Créez le fichier de configuration uwsgi pour 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
Ouvrez l'éditeur de votre choix et créez un nouveau service systemd pour Quokka :
[root]$ nano /etc/systemd/system/uwsgi.service
et ajoutez les lignes de code suivantes :
[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
Démarrez et activez uWSGI au démarrage :
[root]$ systemctl enable uwsgi [root]$ systemctl start uwsgi
Démarrez et activez Nginx au démarrage :
[root]$ systemctl enable nginx [root]$ systemctl start nginx
C'est ça. Vous avez installé avec succès votre Quokka. Pour y accéder, ouvrez http://YOUR_QUOKKA_DOMAIN/
dans votre navigateur. Pour plus d'informations sur Quokka, veuillez consulter le site Web officiel de Quokka.
Bien sûr, vous n'avez rien à faire si vous utilisez l'un de nos services d'hébergement VPS Linux, auquel cas vous pouvez simplement demander à nos administrateurs Linux experts de le configurer pour vous. Ils sont disponibles 24h/24 et 7j/7 et prendront immédiatement en charge votre demande.
PS . Si vous avez aimé cet article, partagez-le avec vos amis sur les réseaux sociaux en utilisant les boutons à gauche ou laissez simplement une réponse ci-dessous. Merci.