GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat BookStack Documentation Wiki na CentOS 7

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 a používá webový framework Laravel. V zásadě bude vaše projektová dokumentace/wiki uložena na BookStack jako 'Kniha', následovaná 'Kapitola' a 'Stránky'. 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 CentOS 7 pod zásobníkem LEMP (Linux, Nginx, PHP-FPM, MySQL/MariaDB). Tento tutoriál pokryje témata včetně instalace PHP Composer a vytvoření databáze MySQL pomocí příkazového řádku.

Předpoklady

  • CentOS 7
  • Oprávnění uživatele root

Co uděláme

  1. Nainstalujte úložiště EPEL
  2. Nainstalujte Nginx
  3. Nainstalujte a nakonfigurujte PHP-FPM
  4. Nainstalujte a nakonfigurujte MySQL/MariaDB
  5. Nainstalujte PHP Composer
  6. Nainstalujte BookStack
  7. Nakonfigurujte Nginx Virtual Host BookStack
  8. Testování

Krok 1 – Instalace úložiště EPEL

Přidejte do systému nové úložiště třetí strany. Potřebujeme přidat úložiště EPEL (Extra Packages for Enterprise Linux) do našeho systému CentOS 7, abychom mohli nainstalovat Nginx a další balíčky.

Nainstalujte úložiště EPEL pomocí příkazu yum níže.

sudo yum -y install epel-release

Krok 2 – Instalace Nginx na CentOS 7

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

Nainstalujte webový server Nginx pomocí příkazu yum níže.

sudo yum -y install nginx

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í to zkontrolujte pomocí příkazu netstat.

netstat -plntu

Ujistěte se, že máte na seznamu port 80 a že jej používá služba Nginx.

Webový server Nginx je nyní nainstalován v systému CentOS 7.

Další: Pokud na svém systému používáte firewall, přidejte do konfigurace novou službu HTTP spuštěním příkazů níže.

firewall-cmd --add-service=http --permanent
firewall-cmd --reload

Krok 3 – Instalace PHP a PHP-FPM

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

Před instalací PHP a PHP-FPM přidejte nové 'webtatic' úložiště do systému CentOS 7 pomocí příkazu rpm níže.

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Nyní nainstalujte PHP a PHP-FPM se všemi potřebnými rozšířeními pomocí příkazu yum následujícím způsobem.

sudo yum -y install php70w-fpm php70w-mcrypt php70w-curl php70w-cli php70w-mysql php70w-gd php70w-xsl php70w-json php70w-intl php70w-pear php70w-devel php70w-common php70w-mbstring php70w-tidy php70w-zip php70w-soap curl

Po dokončení instalace musíme upravit konfigurační soubor 'php.ini' a upravit konfiguraci fondu php-fpm 'www.conf'.

Upravte konfigurační soubor php.ini pomocí editoru vim.

vim /etc/php.ini

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

cgi.fix_pathinfo=0

Uložte a ukončete.

Dále upravte konfigurační soubor fondu 'www.conf'.

vim /etc/php-fpm.d/www.conf

Změňte výchozího uživatele pro spouštění služby PHP-FPM na uživatele a skupinu 'nginx'.

user = nginx
group = nginx

Na řádku 'listen' změňte hodnotu na soubor ponožky, jak je uvedeno níže. Pod souborem sock budeme spouštět PHP-fpm.

listen = /var/run/php-fpm/php-fpm.sock

Nyní k povolení soketu a konfiguraci vlastníka. Odkomentujte tyto řádky a změňte hodnotu, jak je uvedeno níže.

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Nakonec odkomentujte prostředí PHP-FPM.

env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp

Uložte a ukončete.

Pokud je konfigurace dokončena, spusťte službu PHP-FPM a povolte její spuštění při každém spuštění.

systemctl start php-fpm
systemctl enable php-fpm

Nyní to zkontrolujte pomocí příkazu netstat.

netstat -pl | grep php

A ujistěte se, že jste získali soubor PHP-FPM sock.

Na systém CentOS 7 byly nainstalovány PHP a PHP-FPM 7.0 se všemi rozšířeními potřebnými pro platformu 'BookStack'.

Krok 4 – Instalace a konfigurace MySQL/MariaDB

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

Spusťte příkaz yum níže a nainstalujte databázi MariaDB.

yum install -y mariadb mariadb-server

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

systemctl start mariadb
systemctl enable mariadb

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

Spusťte níže uvedený příkaz a nastavte heslo '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' pro yes a znovu stisknout Enter.

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 MySQL pro instalaci BookStack. Vytvoříme novou databázi s názvem 'bookstackdb' s uživatelem 'bookstak' a heslem '[email protected]'.

Přihlaste se do prostředí MySQL pomocí uživatele root.

mysql -u root -p

Spusťte všechny dotazy MySQL níže v shellu.

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 CentOS 7 a byla vytvořena databáze pro instalaci 'BookStack'.

Krok 5 – Instalace PHP Composer na CentOS 7

Skladatel 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 ve svém domovském adresáři získáte soubor 'composer.phar'. Přesuňte soubor do adresáře '/usr/bin' a vyzkoušejte příkaz 'composer', jak je ukázáno níže.

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

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

PHP Composer je nyní nainstalován v systému CentOS 7.

Krok 6 – Instalace BookStack na CentOS 7

V tomto kroku nainstalujeme BookStack do adresáře '/var/www' - tento adresář bude kořenovým adresářem aplikace.

Před instalací 'BookStack' nainstalujte do systému git.

yum -y install git

Nyní vytvořte nový adresář '/var/www'.

mkdir -p /var/www

Přejděte do tohoto adresáře 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 potřebné závislosti PHP pomocí příkazu skladatel, jak je znázorněno níže.

cd BookStack/
composer install

Ujistěte se, že se neobjeví žádná chyba a až bude hotovo. Výsledek uvidíte 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 oprávnění k vlastnictví adresáře 'BookStack' na uživatele a skupinu 'nginx'.

chown -R nginx:nginx /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 následující příkazy.

php artisan key:generate
php artisan migrate

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

Počkejte, dokud nebude migrace tabulky úspěšná.

Byla nainstalována aplikace BookStack s vygenerovaným tajným unikátním klíčem a 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ý soubor virtuálního hostitele 'bookstack.conf' v adresáři 'conf.d/'.

cd /etc/nginx
vim conf.d/bookstack.conf

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:/var/run/php-fpm/php-fpm.sock;
  }

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

Uložte a ukončete.

Nyní otestujte konfiguraci nginx a ujistěte se, že nedošlo k chybě, poté restartujte službu nginx.

nginx -t
systemctl restart nginx

Virtuální hostitel Nginx pro aplikaci BookStack byl vytvořen a aktivován.

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 uživatele správce „[email protected]“ s heslem „password“ a poté stiskněte tlačítko „Přihlásit se“.

Měli byste získat uživatelský panel BookStack.

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

Nyní klikněte na „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'.

Instalace BookStack se stackem LEMP (Linux, Nginx, MariaDB a PHP-FPM) na CentOS 7 byla úspěšně dokončena.


Cent OS
  1. Jak nainstalovat a nakonfigurovat Nginx na CentOS 7

  2. Jak nainstalovat Nginx na CentOS 7

  3. Jak nainstalovat Linux Dash na CentOS 6

  1. Jak nainstalovat phpMyAdmin s Nginx na CentOS 7

  2. Jak nainstalovat Nginx na CentOS 8

  3. Jak nainstalovat Magento 2.1 na CentOS 7

  1. Jak nainstalovat SuiteCRM s Nginx na CentOS 7

  2. Jak nainstalovat MediaWiki s Nginx na CentOS 7

  3. Jak nainstalovat Invoice Ninja na CentOS 7