GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat BookStack na Ubuntu 16.04 LTS

BookStack je platforma s otevřeným zdrojovým kódem pro vytváření obsahu dokumentace/wiki pro váš projekt. Byl napsán v programovacím jazyce PHP s webovým rámcem Laravel. V zásadě se vaše projektová dokumentace/wiki uloží na BookStack jako „Kniha“, po níž následují „Kapitola“ a „Stránky“. A usnadňuje vám vytváření a čtení dokumentace jako knihy na základě kapitol a stránek.

V tomto tutoriálu vám krok za krokem ukážu, jak nainstalovat a nakonfigurovat BookStack na Ubuntu 16.04 pod zásobníkem LEMP (Linux, Nginx, PHP-FPM, MySQL/MariaDB). Tento tutoriál pokryje podrobnosti včetně toho, jak nainstalovat PHP Composer a vytvořit databázi MySQL ručně pomocí příkazového řádku.

Předpoklady

  • Ubuntu 16.04
  • Oprávnění uživatele root

Co uděláme

  1. Aktualizujte úložiště a upgradujte systém
  2. Nainstalujte Nginx na Ubuntu 16.04
  3. Nainstalujte a nakonfigurujte PHP-FPM
  4. Nainstalujte a nakonfigurujte databázi MariaDB
  5. Nainstalujte PHP Composer
  6. Nainstalujte a nakonfigurujte BookStack
  7. Nakonfigurujte virtuálního hostitele Nginx pro BookStack
  8. Testování

Krok 1 – Aktualizace a upgrade Ubuntu

Před instalací jakýchkoli balíčků pro instalaci BookStack se ujistěte, že vaše úložiště Ubuntu a systém jsou aktuální.

Pokud ne, můžete aktualizovat úložiště Ubuntu a upgradovat systém pomocí příkazů níže.

sudo apt update
sudo apt upgrade

Krok 2 – Instalace Nginx na Ubuntu 16.04

V tomto tutoriálu spustíme platformu 'BookStack' pod zásobníkem LEMP a nainstalujeme webový server Nginx z úložiště Ubuntu.

Nainstalujte webový server Nginx na Ubuntu pomocí příkazu apt níže.

sudo apt install nginx -y

Po dokončení instalace spusťte službu a povolte její spuštění při každém spuštění systému.

systemctl start nginx
systemctl enable nginx

Nyní zkontrolujte stav služby nginx a otevřený port v systému a ujistěte se, že máte v seznamu HTTP port 80.

Spusťte níže uvedené příkazy.

systemctl status nginx
netstat -plntu

Následuje výsledek.

Webový server Nginx je nainstalován na serveru Ubuntu 16.04.

Krok 3 – Instalace a konfigurace PHP-FPM

V tomto kroku nainstalujeme a nakonfigurujeme PHP-FPM 7.0. Nainstalujeme PHP a PHP-FPM s některými rozšířeními, která 'BookStack' potřebuje, včetně PDO, Tokenizer, GD, Tidy, MBString a OpenSSL.

Nainstalujte PHP a PHP-FPM se všemi požadovanými rozšířeními spuštěním příkazu apt níže.

sudo apt install php7.0-fpm php7.0-mcrypt php7.0-curl php7.0-cli php7.0-mysql php7.0-gd php7.0-xsl php7.0-json php7.0-intl php-pear php7.0-dev php7.0-common php7.0-mbstring php7.0-tidy php7.0-zip php-soap libcurl3 curl -y

Po dokončení instalace musíme nakonfigurovat konfigurační soubory 'php.ini' pro 'php fpm' a 'php cli'.

Upravte soubor 'php.ini' pro konfiguraci 'fpm' pomocí vim.

vim /etc/php/7.0/fpm/php.ini

Odkomentujte řádek 'cgi.fix_pathinfo' a změňte hodnotu na '0'.

cgi.fix_pathinfo=0

Uložte a ukončete.

Upravte soubor 'php.ini' pro konfiguraci 'cli' pomocí vim.

vim /etc/php/7.0/cli/php.ini

Odkomentujte řádek 'cgi.fix_pathinfo' a změňte hodnotu na '0'.

cgi.fix_pathinfo=0

Uložte a ukončete.

Nyní spusťte službu PHP-FPM a povolte její spuštění při každém startu systému.

systemctl start php7.0-fpm
systemctl enable php7.0-fpm

V systému Ubuntu poběží PHP-FPM pod souborem 'sock' – zkontrolujte to pomocí příkazu netstat níže.

netstat -pl | grep fpm

A dostanete výsledek, jak je uvedeno níže.

Byly nainstalovány PHP a PHP-FPM se všemi požadovanými rozšířeními.

Krok 4 – Instalace a konfigurace databáze MariaDB

BookStack nabízí pouze podporu pro databázi MySQL a běží pouze pod verzí MySQL>=5.6. V tomto tutoriálu budeme používat nejnovější verzi MariaDB, kterou lze nainstalovat z úložiště Ubuntu.

Spuštěním následujícího příkazu apt nainstalujte databázi MariaDB.

sudo apt install mariadb-server mariadb-client -y

Po dokončení instalace spusťte službu a povolte její spuštění při každém spuštění systému.

systemctl start mysql
systemctl enable mysql

Nyní musíme nakonfigurovat heslo 'root' pro databázi.

Spusťte následující příkaz pro nastavení hesla 'kořenové' databáze.

mysql_secure_installation

A budete požádáni o nové heslo root MySQL - zadejte heslo pro uživatele root a stiskněte Enter. Pro ostatní stačí napsat 'Y' na yes a Enter znovu.

Set root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Kořenové heslo MySQL je nyní nastaveno.

Dále musíme vytvořit novou databázi pro instalaci BookStack.

Vytvoříme novou databázi s názvem 'bookstackdb ' s uživatelem 'bookstak “ a heslo „[e-mail chráněn] '.

Přihlaste se do prostředí MySQL jako uživatel root.

mysql -u root -p

Nyní spusťte všechny níže uvedené dotazy MySQL.

create database bookstackdb;
create user [email protected] identified by '[email protected]';
grant all privileges on bookstackdb.* to [email protected] identified by '[email protected]';
flush privileges;
exit;

MySQL/MariaDB byla nainstalována do systému Ubuntu a byla vytvořena databáze pro instalaci 'BookStack'.

Krok 5 – Instalace PHP Composer

Composer je správce závislostí pro PHP. Umožňuje vám spravovat závislosti PHP, které potřebujete pro svůj projekt. V tomto kroku nainstalujeme Composer pomocí instalačního skriptu. Composer bude použit ke stažení všech PHP knihoven, které 'BookStack' potřebuje.

Přejděte do domovského adresáře a stáhněte si instalační program pomocí curl.

cd ~/
curl -sS https://getcomposer.org/installer | php

A získáte soubor 'composer.phar' do svého domovského adresáře, přesuňte soubor do adresáře '/usr/bin' a spusťte příkaz 'composer', jak je uvedeno níže.

mv composer.phar /usr/bin/composer
composer -v

Získáte verzi skladatele, která je nainstalována ve vašem systému.

PHP Composer je nyní nainstalován na Ubuntu 16.04.

Krok 6 – Instalace BookStack

V tomto kroku nainstalujeme BookStack do adresáře '/var/www', což bude kořenový adresář aplikace.

Přejděte do adresáře '/var/www' a naklonujte zdrojový kód 'BookStack' pomocí příkazu git.

cd /var/www/
git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch

Přejděte do adresáře 'BookStack/' a nainstalujte všechny závislosti PHP pomocí příkazu skladatel, jak je znázorněno níže.

cd BookStack/
composer install

Ujistěte se, že se nezobrazuje žádná chyba, a po dokončení se zobrazí výsledek, jak je uvedeno níže.

Nyní zkopírujte konfigurační soubor prostředí '.env.example' a upravte jej pomocí vim.

cp .env.example .env
vim .env

Na řádku s podrobnostmi o databázi změňte vše s informacemi o databázi, jak je uvedeno níže.

# Database details
DB_HOST=localhost
DB_DATABASE=bookstackdb
DB_USERNAME=bookstack
[email protected]

Uložte a ukončete.

A změňte vlastníka adresáře 'BookStack' na uživatele a skupinu 'www-data'.

chown -R www-data:www-data /var/www/BookStack

Dále musíme vygenerovat jedinečný aplikační klíč pro BookStack a aktualizovat schéma databáze pomocí řemeslných příkazů PHP.

V kořenovém adresáři aplikace '/var/www/BookStack' spusťte příkazy, jak je uvedeno níže.

php artisan key:generate
php artisan migrate

Budete požádáni o potvrzení, napište „ano“ a stiskněte Enter.

Počkejte, až příkaz vygeneruje tajný klíč a importuje schéma databáze.

BookStack byl nyní nainstalován na Ubuntu 16.04, byla vygenerována aplikace tajného jedinečného klíče a bylo aktualizováno schéma databáze pro BookStack.

Krok 7 – Konfigurace virtuálního hostitele Nginx pro BookStack

V tomto kroku nakonfigurujeme virtuálního hostitele nginx pro BookStack. Jako název domény pro naši adresu URL BookStack budeme používat 'book.hakase-labs.co'.

Přejděte do adresáře '/etc/nginx' a pomocí editoru vim vytvořte nový virtuální hostitelský soubor 'bookstack' v adresáři 'sites-available'.

cd /etc/nginx/
vim sites-available/bookstack

Vložte konfiguraci níže.

server {
  listen 80;
  server_name book.hakase-labs.co;
  root /var/www/BookStack/public;

  access_log  /var/log/nginx/bookstack_access.log;
  error_log  /var/log/nginx/bookstack_error.log;

  client_max_body_size 1G;
  fastcgi_buffers 64 4K;

  index  index.php;

  location / {
    try_files $uri $uri/ /index.php?$query_string;
  }

  location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README) {
    deny all;
  }

  location ~ \.php(?:$|/) {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    include fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
  }

  location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
    expires 30d;
    access_log off;
  }
}

Uložte a ukončete.

Nyní aktivujte virtuálního hostitele a otestujte konfiguraci.

ln -s /etc/nginx/sites-available/bookstack /etc/nginx/sites-enabled/
nginx -t

Ujistěte se, že se nezobrazuje žádná chyba, jak je uvedeno níže.

Nyní restartujte službu Nginx.

systemctl restart nginx

Byl přidán a aktivován virtuální hostitel Nginx pro BookStack.

Krok 8 – Testování

Otevřete webový prohlížeč a do adresního řádku zadejte adresu URL BookStack, moje je http://book.hakase-labs.co/

A budete přesměrováni na stránku 'přihlášení/', jak je uvedeno níže.

Zadejte výchozího administrátora „[email protected] ' s heslem 'heslo “ a poté stiskněte „Přihlásit se '.

A získáte uživatelský panel BookStack.

Klikněte na nabídku 'Nastavení' a dostanete se na stránku nastavení.

Nyní klikněte na nabídku „Uživatelé“ a poté klikněte na uživatele „Správce“. Změňte výchozí e-mail pomocí své e-mailové adresy a hesla pomocí vlastního tajného hesla.

Poté klikněte na tlačítko 'Uložit'.

Tímto byla instalace BookStack se stackem LEMP (Linux, Nginx, MariaDB a PHP-FPM) na Ubuntu 16.04 úspěšně dokončena.


Ubuntu
  1. Jak nainstalovat Ariadne CMS na Ubuntu 18.04 LTS

  2. Jak nainstalovat MediaWiki na Ubuntu 18.04 LTS

  3. Jak nainstalovat PHP 7.3 na Ubuntu 18.04 LTS

  1. Jak nainstalovat SOPlanning na Ubuntu 18.04 LTS

  2. Jak nainstalovat Elxis CMS na Ubuntu 18.04 LTS

  3. Jak nainstalovat BookStack na Ubuntu 18.04 LTS

  1. Jak nainstalovat Akaunting na Ubuntu 18.04 LTS

  2. Jak nainstalovat DokuWiki na Ubuntu 18.04 LTS

  3. Jak nainstalovat Go na Ubuntu 22.04 LTS