MODOP – Installation Bookstack – Debian 10

Hostname : bookstack.house.cpb

  • IP : 172.16.185.60
  • CPU : 1
  • RAM : 2Go
  • Disque : 8Go
  • OS Linux : Debian 10 – Minimal

1°) Installation Debian 10 – Minimal

 « Install »


« French »


Situation géographique « France »


Clavier « Français »

……



Le réseau Privé 172.16.185.0/24 n’a pas de DHCP ☺.. on fixera l’IP en mode statique.


« Configurer vous-même … »


Ajouter l’IP « 172.16.185.60 » et « Continuer »


Netmask 24 et « Continuer »


Ajouter l’IP de la passerelle, sur mon infra 172.16.185.201 et « Continuer »


Ajouter les DNS, dans mon infra 172.16.185.1 et 172.16.185.2 et « Continuer »


Ajouter du Hostname machine et « Continuer »



Définir mot de passe root et confirmation


Définir un utilisateur et « Continuer »


Personnaliser le login de l’utilisateur, on restera avec « chris »



Définir et confirmer le mot de passe de l’utilisateur chris


Pour le MODOP , nous allons prendre « assisté – … LVM ». Les préconisations d’une PROD seraient de passer en manuel et de définir toutes les slices individuellement.


« Enter »


« Prendre tout dans une seule partition… »


« Oui »


« Continuer »


« Oui »


Installation de linux sur le LVM.


« Non »


Gestion des paquets « France »


Choix du miroir


« Continuer »



Participation au programme Debian « Non »


Choix des paquets à installer. Ici on prendra le minimum soit Serveur SSH et les utilitaires usuels


Installation du Grub « Oui »


Choisir votre Slice LVM /dev/sda pour le Grub


L’installation de Debian est désormais terminée, il vous reste à éjecter votre support CD dur lecteur et « Continuer »

Ajout middleware

root@bookstack:/home/chris# apt -y update
root@bookstack:/home/chris# apt -y install git curl htop iotop nmap

Installation Apache

root@bookstack:/home/chris# apt install -y apache2
root@bookstack:/home/chris# nmap bookstack

Check d’accès http://172.16.185.60

Installation php et Modules

root@bookstack:/home/chris# apt install -y libapache2-mod-php7.3 php7.3 php7.3-fpm php7.3-curl php7.3-mbstring php7.3-ldap php7.3-tidy php7.3-xml php7.3-zip php7.3-gd php7.3-mysql
root@bookstack:/home/chris# php -v

Check PHP

root@bookstack:/home/chris# touch /var/www/html/index.php
root@bookstack:/home/chris# echo "<?php phpinfo(); ?>" > /var/www/html/index.php

Check d’accès http://172.16.185.60/index.php

Installation MySql

root@bookstack:/home/chris# apt -y install mariadb-server mariadb-client

Set le mot de passe Root

root@bookstack:/home/chris# mysql_secure_installation

Création Table « bookstack » et user pour « bookstack »

root@bookstack:/home/chris# mysql -u root -p

MariaDB [(none)]> CREATE DATABASE bookstack;

MariaDB [(none)]> CREATE USER 'chris_bookstack'@'localhost' IDENTIFIED BY 'chris!bookstack';

MariaDB [(none)]> GRANT ALL ON bookstack.* TO 'chris_bookstack'@'localhost';

MariaDB [(none)]> FLUSH PRIVILEGES;

MariaDB [(none)]> quit

Récupération BookStack

root@bookstack:/home/chris# cd /var/www
root@bookstack:/var/www# git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch bookstack

Installation BookStack via composer

root@bookstack:/var/www# cd bookstack/
root@bookstack:/var/www/bookstack# curl -s https://getcomposer.org/installer > composer-setup.php

root@bookstack:/var/www/bookstack# php composer-setup.php --quiet
root@bookstack:/var/www/bookstack# rm -f composer-setup.php
root@bookstack:/var/www/bookstack# export COMPOSER_ALLOW_SUPERUSER=1
root@bookstack:/var/www/bookstack# env |grep COMPOSER_ALLOW_SUPERUSER
COMPOSER_ALLOW_SUPERUSER=1
root@bookstack:/var/www/bookstack# php composer.phar install --no-dev --no-plugins


« L’installation va commencer »


« Installation terminée »

Configurer MySql et BookStack

root@bookstack:/var/www/bookstack# ls -al |grep env

root@bookstack:/var/www/bookstack# mv .env.example .env
root@bookstack:/var/www/bookstack# vi .env
APP_URL=http://bookstack.house.cpb
# Database details
DB_HOST=localhost
DB_DATABASE=bookstack
DB_USERNAME=chris_bookstack
DB_PASSWORD=chris!bookstack

Générer app-key

root@bookstack:/var/www/bookstack# php artisan key:generate --no-interaction --force
Application key set successfully.

root@bookstack:/var/www/bookstack# php artisan migrate --no-interaction --force
Migration table created successfully.

Changement des droits

root@bookstack:/var/www/bookstack# chown www-data:www-data -R bootstrap/cache public/uploads storage
root@bookstack:/var/www/bookstack# chmod -R 755 bootstrap/cache public/uploads storage

Configurer Site Apache bookstack

root@bookstack:/var/www/bookstack# export PATH="/usr/sbin:$PATH"
root@bookstack:/var/www/bookstack# a2enmod rewrite
root@bookstack:/var/www/bookstack# systemctl restart apache2

root@bookstack:/var/www/bookstack# vi /etc/apache2/sites-available/bookstack.conf
<VirtualHost *:80>
 ServerName bookstack.house.cpb
 ServerAdmin chris@en-images.info
 DocumentRoot /var/www/bookstack/public/
 <Directory /var/www/bookstack/public/>
 Options Indexes FollowSymLinks
 AllowOverride None
 Require all granted

 <IfModule mod_rewrite.c>

 <IfModule mod_negotiation.c>
 Options -MultiViews -Indexes
 </IfModule>

 RewriteEngine On

 # Handle Authorization Header
 RewriteCond %{HTTP:Authorization} .
 RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

 # Redirect Trailing Slashes If Not A Folder...
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_URI} (.+)/$
 RewriteRule ^ %1 [L,R=301]

 # Handle Front Controller...
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteRule ^ index.php [L]

 </IfModule>

 </Directory>

 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Désactiver Default Site et activation de bookstack.conf

root@bookstack:/var/www/bookstack# a2dissite 000-default.conf
root@bookstack:/var/www/bookstack# a2ensite bookstack.conf
root@bookstack:/var/www/bookstack# systemctl restart apache2

Check de l’accès au site

http://bookstack.house.cpb

Les defaults Crédentiels sont les suivants

  • Login :admin@admin.com
  • Mot de passe : password

Views: 20

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *