Dans cet article, nous allons vous expliquer comment installer Paperwork sur un VPS Ubuntu 16.04 avec MariaDB, PHP-FPM et Nginx. Paperwork est une alternative open source et auto-hébergée à des services comme Evernote, Microsoft OneNote ou Google Keep et il est construit sur Laravel 4.2. Ce guide devrait également fonctionner sur d'autres systèmes VPS Linux, mais a été testé et écrit pour un VPS Ubuntu 16.04.
1. Connectez-vous à votre VPS via SSH
ssh user@vps_IP
2. Mettez à jour le système et installez les packages nécessaires
[user]$ sudo apt-get update && sudo apt-get -y upgrade [user]$ sudo apt-get install software-properties-common git nano curl
3. Installez MariaDB 10.1
Pour ajouter le référentiel MariaDB à votre liste de sources et installer le dernier serveur MariaDB 10.1, exécutez les commandes suivantes :
[user]$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 [user]$ sudo add-apt-repository 'deb [arch=amd64,i386] http://ftp.osuosl.org/pub/mariadb/repo/10.1/ubuntu xenial main' s[user]$ sudo apt-get update [user]$ sudo apt-get install -y mariadb-server
4. Sécurisez l'installation
Une fois l'installation terminée, exécutez la commande suivante pour sécuriser votre installation :
[user]$ mysql_secure_installation
5. Créer une nouvelle base de données
Ensuite, nous devons créer une base de données pour l'installation de Paperwork.
[user]$ myswl -uroot -p MariaDB [(none)]> CREATE DATABASE paperwork; MariaDB [(none)]> GRANT ALL PRIVILEGES ON paperwork.* TO 'paperwork'@'localhost' IDENTIFIED BY 'strong_password'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
6. Installez PHP, Composer et les modules PHP requis
Pour installer la dernière version stable de PHP version 7.0 et tous les modules nécessaires, exécutez :
[user]$ sudo apt-get -y install php-fpm php-cli php-json php-curl php-gd php-mysql php-mcrypt php-mbstring
Les commandes suivantes définiront la limite de mémoire PHP à 512 Mo, modifieront les valeurs de upload_max_filesize et post_max_size à 200 Mo et définiront le fuseau horaire sur UTC.
[user]$ sudo sed -i "s/memory_limit = .*/memory_limit = 512M/" /etc/php/7.0/fpm/php.ini [user]$ sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.0/fpm/php.ini [user]$ sudo sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=1/" /etc/php/7.0/fpm/php.ini [user]$ sudo sed -i "s/upload_max_filesize = .*/upload_max_filesize = 200M/" /etc/php/7.0/fpm/php.ini [user]$ sudo sed -i "s/post_max_size = .*/post_max_size = 200M/" /etc/php/7.0/fpm/php.ini
Composer est un gestionnaire de dépendances pour PHP avec lequel vous pouvez installer des packages. Composer intégrera toutes les bibliothèques et dépendances requises dont vous avez besoin pour votre projet.
[user]$ curl -sS https://getcomposer.org/installer | php [user]$ sudo mv composer.phar /usr/local/bin/composer
Créez un nouveau pool PHP-FPM pour votre utilisateur :
[user]$ sudo nano /etc/php/7.0/fpm/pool.d/your_user.conf [your_user] user = your_user group = your_user listen = /run/php/php7.0-your_user.sock listen.owner = your_user listen.group = your_user listen.mode = 0666 pm = ondemand pm.max_children = 5 pm.process_idle_timeout = 10s pm.max_requests = 200 chdir = /
N'oubliez pas de changer your_user par votre nom d'utilisateur.
Redémarrez PHP-FPM :
[user]$ sudo service php7.0-fpm restart
7. Installer Node.Js
Nous allons installer le dernier package nodejs à partir du référentiel nodesource.
[user]$ curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - [user]$ sudo apt-get install -y nodejs
Une fois Node installé, installez les packages gulp et bower globalement à l'aide de NPM.
[user]$ sudo npm install -g gulp bower
8. Installer la paperasse
Créez un répertoire racine pour vos documents à l'aide de la commande suivante :
[user]$ mkdir -p ~/myPaperwork.com/public_html
Clonez le dépôt du projet depuis GitHub :
[user]$ git clone https://github.com/twostairs/paperwork.git ~/myPaperwork.com/public_html
Passez en public_html le répertoire :
[user]$ cd ~/myPaperwork.com/public_html/frontend
9. Installer toutes les dépendances PHP
Installez toutes les dépendances PHP à l'aide de composer
[user]$ composer install
Créez un fichier "database.json" en copiant le fichier "default_database.json" :
[user]$ cp app/storage/config/default_database.json app/storage/config/database.json
Entrez vos informations d'identification MySQL dans le database.json
fichier :
[user]$ nano app/storage/config/database.json
{ "driver": "mysql", "database": "paperwork", "host": "localhost", "username": "paperwork", "password": "strong_password", "port": 3306 }
et exécutez la commande suivante pour migrer la base de données :
[user]$ php artisan migrate
installer toutes les dépendances npm
[user]$ npm install
installez les dépendances bower et exécutez gulp pour créer les ressources
[user]$ bower install [user]$ gulp
10. Installer et configurer Nginx
Pour installer la dernière version stable de Nginx disponible sur les dépôts Ubuntu, exécutez :
[user]$ sudo apt-get -y install nginx
Générez un certificat SSL auto-signé :
[user]$ sudo mkdir -p /etc/nginx/ssl [user]$ cd /etc/nginx/ssl [user]$ sudo openssl genrsa -des3 -passout pass:x -out paperwork.pass.key 2048 [user]$ sudo openssl rsa -passin pass:x -in paperwork.pass.key -out paperwork.key [user]$ sudo rm paperwork.pass.key [user]$ sudo openssl req -new -key paperwork.key -out paperwork.csr [user]$ sudo openssl x509 -req -days 365 -in paperwork.csr -signkey paperwork.key -out paperwork.crt
[user]$ sudo openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048
Si vous ne souhaitez pas recevoir d'avertissements associés aux certificats SSL auto-signés, vous pouvez acheter un certificat SSL de confiance ici.
Ensuite, créez un nouveau bloc serveur Nginx :
[user]$ sudo nano /etc/nginx/sites-available/myPaperwork.com
server { listen 443 ssl http2; server_name myPaperwork.com; root /home/your_user/myPaperwork.com/public_html/frontend/public; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php; } ssl on; ssl_certificate /etc/nginx/ssl/paperwork.crt; ssl_certificate_key /etc/nginx/ssl/paperwork.key; ssl_dhparam /etc/nginx/ssl/dhparam.pem; ssl_session_timeout 5m; ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_prefer_server_ciphers on; access_log /var/log/nginx/paperwork.access.log; error_log /var/log/nginx/paperwork.error.log; location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php7.0-fpm-your_user.sock; fastcgi_index index.php; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_intercept_errors off; fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; } location ~ /\.ht { deny all; } } server { listen 80; server_name myPaperwork.com; add_header Strict-Transport-Security max-age=2592000; rewrite ^ https://$server_name$request_uri? permanent; }
N'oubliez pas de changer your_user avec votre nom d'utilisateur.
Activez le bloc serveur en créant un lien symbolique :
[user]$ sudo ln -s /etc/nginx/sites-available/myPaperwork.com /etc/nginx/sites-enabled/myPaperwork.com
11. Redémarrez le serveur Web et testez
Testez la configuration de Nginx et redémarrez nginx :
[user]$ sudo nginx -t [user]$ sudo service nginx restart
Ouvrez http://myPaperwork.com/ dans votre navigateur Web préféré et vous devriez voir l'écran d'installation de Paperwork. Sur cette page, vous devrez entrer les détails de la base de données que vous avez créée précédemment et créer un utilisateur administrateur.
C'est ça. Vous avez installé Paperwork avec succès sur votre VPS Ubuntu 16.04. Pour plus d'informations sur la gestion de votre installation de Paperwork, veuillez vous référer à la documentation officielle de Paperwork.
Bien sûr, vous n'avez rien à faire si vous utilisez l'un de nos services d'hébergement VPS, 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 sur la façon d'installer Paperwork sur Ubuntu, partagez-le avec vos amis sur les réseaux sociaux à l'aide des boutons à gauche ou laissez simplement une réponse ci-dessous. Merci.