GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS7にBookStackドキュメントWikiをインストールする方法

BookStackは、プロジェクトのドキュメント/Wikiコンテンツを作成するためのオープンソースプラットフォームです。これはPHPプログラミング言語で記述されており、LaravelWebフレームワークを使用しています。基本的に、プロジェクトのドキュメント/ wikiは「ブック」としてBookStackに保存され、その後に「チャプター」と「ページ」が続きます。章とページに基づいて、ドキュメントをブックとして作成して読むのが簡単になります。

このチュートリアルでは、LEMP(Linux、Nginx、PHP-FPM、MySQL / MariaDB)スタックの下のCentOS7にBookStackをインストールして構成する方法を段階的に説明します。このチュートリアルでは、PHPComposerのインストールやコマンドラインを使用したMySQLデータベースの作成などのトピックについて説明します。

前提条件
  • CentOS 7
  • root権限
何をするか
  1. EPELリポジトリをインストールする
  2. Nginxをインストールする
  3. PHP-FPMのインストールと構成
  4. MySQL/MariaDBのインストールと構成
  5. PHPComposerをインストールする
  6. BookStackをインストールする
  7. Nginx仮想ホストBookStackを構成する
  8. テスト
ステップ1-EPELリポジトリをインストールする

新しいサードパーティリポジトリをシステムに追加します。 Nginxやその他のパッケージをインストールできるように、EPEL(Enterprise Linux用の追加パッケージ)リポジトリをCentOS7システムに追加する必要があります。

以下のyumコマンドを使用してEPELリポジトリをインストールします。

sudo yum -y install epel-release
ステップ2-CentOS7にNginxをインストールする

このチュートリアルでは、LEMPスタックの下で「BookStack」プラットフォームを実行し、EPELリポジトリからNginxWebサーバーをインストールします。

以下のyumコマンドを使用してNginxWebサーバーをインストールします。

sudo yum -y install nginx

インストールが完了したら、サービスを開始し、システムの起動時に毎回起動できるようにします。

systemctl start nginx
systemctl enable nginx

次に、netstatコマンドを使用して確認します。

netstat -plntu

リストにポート80があり、Nginxサービスによって使用されていることを確認してください。

これで、NginxWebサーバーがCentOS7システムにインストールされました。

追加: システムでfirewalldを実行している場合は、以下のコマンドを実行して、構成に新しいHTTPサービスを追加します。

firewall-cmd --add-service=http --permanent
firewall-cmd --reload
ステップ3-PHPとPHP-FPMをインストールする

このステップでは、PHP-FPM7.0をインストールして構成します。 PHPとPHP-FPMを「webtatic」リポジトリからインストールします。「BookStack」プラットフォームに必要な拡張機能(PDO、Tokenizer、GD、Tidy、MBString、OpenSSLなど)を使用してPHPをインストールします。

PHPおよびPHP-FPMをインストールする前に、以下のrpmコマンドを使用して、新しい「webtatic」リポジトリをCentOS7システムに追加してください。

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

次に、次の方法でyumコマンドを使用して、必要なすべての拡張機能を備えたPHPおよびPHP-FPMをインストールします。

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

インストールが完了したら、「php.ini」構成ファイルを編集し、php-fpmプール構成「www.conf」を編集する必要があります。

vimエディタを使用して「php.ini」構成ファイルを編集します。

vim /etc/php.ini

'cgi.fix_pathinfo'行のコメントを解除し、値を'0'に変更します。

cgi.fix_pathinfo=0

保存して終了します。

次に、プール構成ファイル「www.conf」を編集します。

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

PHP-FPMサービスを実行するためのデフォルトのユーザーを「nginx」ユーザーとグループに変更します。

user = nginx
group = nginx

'listen'行で、値を次のようにsockファイルに変更します。 sockファイルでPHP-fpmを実行します。

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

次に、ソケットのアクセス許可と所有者の構成について説明します。これらの行のコメントを解除し、以下のように値を変更します。

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

最後に、PHP-FPM環境のコメントを解除します。

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

保存して終了します。

構成が完了したら、PHP-FPMサービスを開始し、起動時に毎回起動できるようにします。

systemctl start php-fpm
systemctl enable php-fpm

次に、netstatコマンドを使用して確認します。

netstat -pl | grep php

そして、PHP-FPMソックスファイルを必ず入手してください。

「BookStack」プラットフォームに必要なすべての拡張機能を備えたPHPおよびPHP-FPM7.0がCentOS7システムにインストールされました。

ステップ4-MySQL/MariaDBをインストールして構成する

BookStackはMySQLデータベースのみをサポートし、MySQLバージョン>=5.6でのみ実行されます。このチュートリアルでは、UbuntuリポジトリからインストールできるMariaDB(最新バージョン)を使用します。

以下のyumコマンドを実行して、MariaDBデータベースをインストールします。

yum install -y mariadb mariadb-server

インストールが完了したら、サービスを開始し、起動時に毎回起動できるようにします。

systemctl start mariadb
systemctl enable mariadb

次に、データベースの「root」パスワードを構成する必要があります。

以下のコマンドを実行して、「root」データベースパスワードを設定します。

mysql_secure_installation

そして、新しいMySQLルートパスワードの入力を求められます。ルートユーザーのパスワードを入力して、Enterキーを押します。その他の場合は、「Y」と入力して「はい」と入力し、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

これで、MySQLのルートパスワードが設定されました。

次に、BookStackをインストールするための新しいMySQLデータベースを作成する必要があります。ユーザー「bookstak」とパスワード「[emailprotected]」を使用して「bookstackdb」という名前の新しいデータベースを作成します。

rootユーザーでMySQLシェルにログインします。

mysql -u root -p

以下のすべての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がCentOS7システムにインストールされ、「BookStack」インストール用のデータベースが作成されました。

ステップ5-CentOS7にPHPComposerをインストールする

コンポーザーはPHPの依存関係マネージャーです。これにより、プロジェクトに必要なPHPの依存関係を管理できます。このステップでは、インストーラースクリプトを使用してComposerをインストールします。 Composerは、「BookStack」に必要なすべてのPHPライブラリをダウンロードするために使用されます。

ホームディレクトリに移動し、curlを使用してインストーラーをダウンロードします。

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

そして、ホームディレクトリに「composer.phar」ファイルを取得します。ファイルを「/usr/ bin」ディレクトリに移動し、以下に示すように「composer」コマンドを試してください。

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

そして、システムにインストールされているコンポーザーバージョンを取得します。

これで、PHPComposerがCentOS7システムにインストールされました。

ステップ6-CentOS7にBookStackをインストールする

このステップでは、BookStackを「/ var/www」ディレクトリの下にインストールします。このディレクトリがルートアプリケーションディレクトリになります。

「BookStack」をインストールする前に、システムにgitをインストールしてください。

yum -y install git

次に、新しい'/ var/www'ディレクトリを作成します。

mkdir -p /var/www

そのディレクトリに移動し、gitコマンドを使用してBookStackソースコードのクローンを作成します。

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

'BookStack /'ディレクトリに移動し、以下に示すように、composerコマンドを使用して必要なすべてのPHP依存関係をインストールします。

cd BookStack/
composer install

エラーが発生しないことと、エラーが完了したことを確認してください。結果は次のように表示されます。

次に、環境構成ファイル「.env.example」をコピーし、vimを使用して編集します。

cp .env.example .env
vim .env

データベースの詳細行で、以下に示すようにデータベース情報ですべてを変更します。

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

保存して終了します。

そして、「BookStack」ディレクトリの所有権を「nginx」ユーザーとグループに変更します。

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

次に、BookStackの一意のアプリケーションキーを生成し、PHPの職人コマンドを使用してデータベーススキーマを更新する必要があります。

ルートアプリケーションディレクトリ'/var / www / BookStack'で、次のコマンドを実行します。

php artisan key:generate
php artisan migrate

確認を求められたら、「はい」と入力してEnterキーを押します。

テーブルの移行が成功するまで待ちます。

BookStackアプリケーションがインストールされ、秘密の一意キーアプリケーションが生成され、BookStackのデータベーススキームが更新されました。

ステップ7-BookStack用にNginx仮想ホストを構成する

このステップでは、BookStack用にnginx仮想ホストを構成します。 BookStackURLのドメイン名として「book.hakase-labs.co」を使用します。

'/ etc / nginx'ディレクトリに移動し、vimエディターを使用して'conf.d/'ディレクトリの下に新しい仮想ホストファイル'bookstack.conf'を作成します。

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

以下に構成を貼り付けます。

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;
  }
}

保存して終了します。

次に、nginx構成をテストし、エラーがないことを確認してから、nginxサービスを再起動します。

nginx -t
systemctl restart nginx

BookStackアプリケーション用のNginx仮想ホストが作成され、アクティブ化されました。

ステップ8-テスト

ウェブブラウザを開き、アドレスバーにBookStackのURLを入力します。私のものは次のとおりです。 http://book.hakase-labs.co/

そして、以下のように「ログイン/」ページにリダイレクトされます。

デフォルトの管理者ユーザー「[emailprotected]」とパスワード「password」を入力し、「ログイン」ボタンを押します。

BookStackユーザーダッシュボードを取得する必要があります。

[設定]メニューをクリックすると、設定ページが表示されます。

次に、[ユーザー]をクリックしてから、[管理者]ユーザーをクリックします。デフォルトのメールアドレスを自分のメールアドレスに変更し、パスワードを自分の秘密のパスワードに変更します。

次に、[保存]ボタンをクリックします。

CentOS 7でのLEMP(Linux、Nginx、MariaDB、およびPHP-FPM)スタックを使用したBookStackのインストールが正常に完了しました。


Cent OS
  1. CentOS7にNginxをインストールして構成する方法

  2. CentOS7にNginxをインストールする方法

  3. CentOS6にLinuxDashをインストールする方法

  1. CentOS7にNginxを使用してphpMyAdminをインストールする方法

  2. CentOS8にNginxをインストールする方法

  3. CentOS7にMagento2.1をインストールする方法

  1. CentOS7にNginxを使用してSuiteCRMをインストールする方法

  2. CentOS7にNginxでMediaWikiをインストールする方法

  3. CentOS7にInvoiceNinjaをインストールする方法