GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Turtl Server Evernote Alternative sur CentOS 7

Turtl est une alternative Evernote sécurisée et cryptée. Il s'agit d'une application open source qui vous permet de prendre des notes, de mettre en signet des sites Web, de stocker des documents, de partager des mots de passe avec vos collègues, etc. Turtl vous permet de prendre le contrôle de toutes vos données dans un lieu privé. Le code source de l'application client turtl et serveur turtl est disponible sur github - vous pouvez le déployer manuellement sur votre serveur.

Dans ce tutoriel, nous allons vous montrer étape par étape comment installer et configurer le serveur Turtl sur CentOS 7. Le serveur Turtl est écrit en Common Lisp, nous devons donc installer Common Lisp et QuickLisp sur le système. Ce didacticiel couvrira certains sujets, notamment l'installation de Libuv sur le système CentOS 7 et l'installation de RethinkDB pour le magasin de données turtl.

Prérequis

  • CentOS 7
  • Privilèges root

Ce que nous allons faire

  1. Installer les outils de développement
  2. Installer Libuv sur CentOS 7
  3. Installer et configurer RethinkDB
  4. Installer Common Lisp
  5. Installer Quicklisp
  6. Télécharger et installer Turtl Server
  7. Exécuter Turtl Server en tant que service
  8. Installer et configurer Apache en tant que proxy inverse pour Turtl
  9. Test

Étape 1 - Installer les outils de développement

Pour ce guide, nous avons besoin des packages "Outils de développement" installés sur le système CentOS.

Installez les "outils de développement" à l'aide de la commande yum ci-dessous.

sudo yum group install "Development Tools"

Attendez l'installation de tous les packages "Outils de développement".

Étape 2 - Installer Libuv sur CentOS 7

Libuv est une bibliothèque de support multiplateforme axée sur les E/S asynchrones. Cette bibliothèque est nécessaire au serveur Turtl, et nous allons l'installer manuellement.

Avant d'installer manuellement 'Libuv' sur le système, installons openssl et openssl-devel.

yum -y install openssl openssl-devel

Allez maintenant dans le répertoire '/usr/local/src' et téléchargez le fichier libuv.targz en utilisant wget.

cd /usr/local/src
wget http://dist.libuv.org/dist/v1.9.1/libuv-v1.9.1.tar.gz

Extrayez libuv.tar.gz et supprimez le maître.

tar -xf libuv-v1.9.1.tar.gz
rm -f libuv-v1.9.1.tar.gz

Allez dans le répertoire 'libuv'.

cd libuv-v1.9.1/

Installez Libuv à l'aide des outils de développement en exécutant toutes les commandes ci-dessous.

sh autogen.sh
./configure
make
make install

Une fois terminé, exécutez la commande suivante.

sudo ldconfig

La bibliothèque Libuv a été installée sur le système CentOS 7.

Étape 3 - Installer et configurer RethinkDB

RethinkDB est une base de données open source et distribuée orientée document, et le serveur Turtl utilise RethinkDB comme magasin de données.

Dans cette étape, nous allons installer RethinkDB à partir de son propre référentiel.

Ajoutez le référentiel RethinkDB pour CentOS 7 au système.

sudo wget http://download.rethinkdb.com/centos/7/`uname -m`/rethinkdb.repo \
          -O /etc/yum.repos.d/rethinkdb.repo

Le référentiel RethinkDB a été ajouté, installez-le maintenant à l'aide de la commande yum de la manière suivante.

sudo yum -y install rethinkdb

Une fois l'installation terminée, copiez la configuration par défaut dans le répertoire '/etc/rethinkdb/instances.d'.

cp /etc/rethinkdb/default.conf.sample /etc/rethinkdb/instances.d/default.conf

Et créez un nouveau fichier de service pour RethinkDB à l'aide de l'éditeur vim.

cd /etc/systemd/system
vim rethinkdb.service

Collez-y la configuration suivante.

# Automatically generated by systemd-sysv-generator

[Unit]
Documentation=man:systemd-sysv-generator(8)
SourcePath=/etc/init.d/rethinkdb
Description=LSB: This starts a set of rethinkdb server instances.
Before=multi-user.target
Before=multi-user.target
Before=multi-user.target
Before=graphical.target
Before=shutdown.target
After=remote-fs.target
Conflicts=shutdown.target

[Service]
Type=forking
Restart=no
TimeoutSec=5min
IgnoreSIGPIPE=no
KillMode=process
GuessMainPID=no
RemainAfterExit=yes
ExecStart=/etc/init.d/rethinkdb start
ExecStop=/etc/init.d/rethinkdb stop

Maintenant, rechargez le système systemd et démarrez le service RethinkDB.

systemctl daemon-reload
systemctl start rethinkdb

RethinkDB est maintenant installé et fonctionne sur le système CentOS 7.

Vérifiez-le à l'aide de la commande suivante.

systemctl status rethinkdb
netstat -plntu

Et vous devriez obtenir le résultat ci-dessous.

Étape 4 - Installer Common Lisp

Common Lisp (CL) est un dialecte du langage de programmation Lisp. C'est un membre de la famille Lisp. Dans cette étape, nous allons installer manuellement le 'Clozure Common Lisp' sur le système CentOS.

Allez dans le répertoire '/usr/local/src' et téléchargez le 'Clozure Common Lisp' pour Linux 86/64-bit en utilisant la commande wget.

cd /usr/local/src
wget https://github.com/Clozure/ccl/releases/download/v1.11.5/ccl-1.11.5-linuxx86.tar.gz

Extrayez le fichier compressé 'Clozure Common Lisp' et supprimez le fichier maître.

tar -xf ccl-1.11.5-linuxx86.tar.gz
rm -f ccl-1.11.5-linuxx86.tar.gz

Et vous obtiendrez le répertoire 'ccl'. Allez dans le répertoire 'ccl' et copiez le fichier bin 'ccl64' dans le répertoire '/usr/bin'.

cd /usr/local/src/ccl
sudo cp scripts/ccl64 /usr/bin/

Vérifiez maintenant l'installation de 'Clozure Common Lisp' en exécutant la commande 'ccl64'.

ccl64

Et assurez-vous d'obtenir le résultat ci-dessous.

Le 'Clozure Common lisp' est maintenant installé. Et si vous voulez quitter le shell 'ccl', tapez la commande quit.

(quit)

Étape 5 - Installer Quicklisp

Quicklisp est un gestionnaire de bibliothèque pour le Common Lisp. Nous avons besoin que le 'Quicklisp' soit installé sur le système car turtl charge toutes ses dépendances via le système Quicklisp.

Avant d'installer Quicklisp, veuillez ajouter un nouvel utilisateur pour l'installation de turtl.

useradd -m -s /bin/bash turtl
passwd turtl

Connectez-vous maintenant en tant qu'utilisateur 'turtl'.

su - turtl

Téléchargez les fichiers 'quicklisp.lisp' et 'asdf.lisp' à l'aide de la commande wget/curl.

wget https://common-lisp.net/project/asdf/asdf.lisp
curl -O https://beta.quicklisp.org/quicklisp.lisp

Chargez maintenant 'quicklisp.lisp' en utilisant la commande 'ccl64' comme ci-dessous.

ccl64 --load quicklisp.lisp

Et vous obtiendrez la ligne de commande du shell 'ccl'. Installez Quicklisp en utilisant la commande ci-dessous.

(quicklisp-quickstart:install)

La commande téléchargera toutes les dépendances pour Quicklisp. Et une fois terminé, ajoutez le fichier "init" Quicklisp et chargez "asdf.lisp".

(ql:add-to-init-file)
(load (compile-file "asdf.lisp"))

Une fois terminé, quittez le shell 'ccl'.

(quit)

Et supprimez les fichiers 'quicklisp.lisp' et 'asdf.lisp'.

rm -f asdf.lisp quicklisp.lisp

Quiclisp a été installé.

Étape 6 - Télécharger et installer Turtl Server

Dans cette étape, nous allons installer Turtl sous l'utilisateur 'turtl' que nous avons créé en haut.

Connectez-vous en tant qu'utilisateur "turtl" et clonez le code source de turtl à l'aide de git.

su - turtl
git clone https://github.com/turtl/api.git

Allez dans le répertoire 'api' et créez un nouveau fichier 'launch.lisp' en utilisant vim.

cd /home/turtl/api
vim launch.lisp

Collez-y la configuration suivante.

(pushnew "./" asdf:*central-registry* :test #'equal)
(load "start")

Enregistrez et quittez.

Ensuite, nous devons installer certaines dépendances pour turtl. Allez dans le répertoire quicklisp et clonez toutes les dépendances.

cd ~/quicklisp/local-projects

Téléchargez toutes les dépendances en exécutant toutes les commandes ci-dessous.

git clone git://github.com/orthecreedence/cl-hash-util
git clone git://github.com/orthecreedence/vom
git clone git://github.com/orthecreedence/cl-async
git clone git://github.com/orthecreedence/cffi
git clone git://github.com/orthecreedence/wookie
git clone git://github.com/orthecreedence/cl-rethinkdb
git clone git://github.com/orthecreedence/cl-libuv
git clone git://github.com/orthecreedence/drakma-async
git clone https://github.com/Inaimathi/cl-cwd.git

Et éditez le fichier ccl init.

vim /home/turtl/.ccl-init.lisp

Allez à la fin de la ligne, collez-y la configuration suivante.

(cwd "/home/turtl/api")
(load "/home/turtl/api/launch")

Enregistrez et quittez.

Copiez maintenant la configuration par défaut de turtl 'config.lisp' et modifiez-la à l'aide de vim.

cp /home/turtl/api/config/config.default.lisp /home/turtl/api/config/config.lisp
vim /home/turtl/api/config/config.lisp

Sur la ligne 'server-bind', ajoutez l'adresse IP localhost comme ci-dessous.

defvar *server-bind* "127.0.0.1"

Enregistrez et quittez.

Une fois toute la configuration terminée, démarrez le serveur turtl à l'aide de la commande 'ccl64'.

ccl64

La commande installera l'API du serveur Turtl et, une fois terminée, vous obtiendrez le résultat ci-dessous.

Appuyez sur 'Ctrl + c' et tapez '(quitter)' pour quitter.

Étape 7 - Exécuter Turtl Server en tant que service

L'API du serveur Turtl a été installée sous l'utilisateur 'turtl'. Et pour ce tutoriel, nous exécuterons turtl en tant que service.

Allez dans le répertoire '/lib/systemd/system' et créez un nouveau fichier 'turtl.service' en utilisant vim.

cd /lib/systemd/system/
vim turtl.service

Collez-y la configuration de service turtl suivante.

 [Unit]
Description=turtl_service
After=network.target mysql.service postgresql.service

[Service]
User=turtl
ExecStart=/usr/bin/ccl64
Restart=always

[Install]
WantedBy=multi-user.target

Enregistrez et quittez.

Maintenant, rechargez systemd et démarrez le service turtl à l'aide de la commande systemctl.

systemctl daemon-reload
systemctl start turtl

Ajoutez le service turtl au temps de démarrage et vérifiez l'état du service turtl.

systemctl enable turtl
systemctl status turtl

Vous devriez obtenir le résultat ci-dessous.

Le service turtl fonctionne maintenant en tant que service sur le système CentOS 7.

Étape 8 - Installer et configurer Apache/httpd en tant que proxy inverse pour Turtl

Dans ce tutoriel, nous exécuterons le serveur Turtl sous le serveur proxy inverse Apache/httpd. Le serveur Turtl fonctionne maintenant sous l'IP locale '127.0.0.1' avec le port '8181', et maintenant nous allons installer le serveur web Apache2 et le configurer comme proxy inverse pour le serveur Turtl.

Installez apache2 avec toutes les dépendances à l'aide de la commande yum ci-dessous.

yum -y install httpd mod_proxy_html

Une fois l'installation terminée, ajoutez un nouveau fichier d'hôte virtuel pour Turtl.

Allez dans le répertoire '/etc/httpd/conf.d' et créez un nouveau fichier d'hôte virtuel 'turtl.conf'.

cd /etc/httpd/conf.d/
vim turtl.conf

Collez-y la configuration d'hôte virtuel suivante.

<VirtualHost *:80>

ServerName turtl.hakase-labs.co
ServerAdmin [email protected]

ProxyPreserveHost On
ProxyRequests off
RewriteEngine On

<Proxy http://localhost:8181>
Order deny,allow
Allow from all
</Proxy>

ProxyPass / http://127.0.0.1:8181/ Keepalive=On timeout=1600
ProxyPassReverse / http://127.0.0.1:8181/

LogLevel info

CustomLog /var/log/httpd/turtl.log combined

</VirtualHost>

Enregistrez et quittez.

Vérifiez maintenant la configuration d'Apache et assurez-vous qu'il n'y a pas d'erreur.

apachectl configtest

Maintenant, redémarrez le service httpd et activez-le pour qu'il se lance à chaque démarrage du système.

systemctl restart httpd
systemctl enable httpd

Le serveur Web Apache2/httpd a été installé sur le système CentOS 7 et agit comme un proxy inverse pour l'application Turtl sur le port 8181.

Vérifiez-le à l'aide de la commande netstat ci-dessous.

netstat -plntu

Étape 9 - Tester

Téléchargez l'application client turtl et ouvrez-la.

Cliquez sur le lien "Créer un compte".

Cliquez maintenant sur le bouton "Je me souviendrai de mon identifiant".

Tapez votre adresse e-mail avec mot de passe et le nom de domaine de votre serveur Turtl.

Et cliquez sur le bouton "Rejoindre".

Vous obtiendrez maintenant une nouvelle fenêtre - cliquez sur le bouton "ignorer cette étape".

Et vous obtiendrez le tableau de bord turtl vierge. Ici, vous pouvez ajouter une nouvelle note, un mot de passe, des fichiers, un signet, etc.

L'installation du serveur Turtl sur le système CentOS 7 s'est terminée avec succès.


Cent OS
  1. Comment installer le serveur Minecraft sur CentOS 7

  2. Comment installer Nginx sur CentOS 8

  3. Comment installer PostgreSQL sur CentOS 8

  4. Comment installer le serveur Teamspeak 3 sur CentOS 8

  5. Comment installer ProFTPD sur CentOS 7

Comment installer Shoutcast Server sur CentOS 8

Comment installer Lighttpd sur CentOS

Comment installer VestaCP sur CentOS 6

Comment installer le serveur VNC sur CentOS 7

Comment installer le serveur Minecraft sur CentOS 6

Comment installer le serveur VNC sur CentOS 6