如何在 Ubuntu 18.04 LTS 上安装 BookStack
在此页
- 要求
- 开始
- 安装 LAMP 服务器
- 配置 MariaDB
- 安装 Bookstack
- 为 Bookstack 配置 Apache
- 访问书库
- 结论
BookStack 是一个免费的开源知识管理平台,可用于为您的用户创建文档和 wiki 内容。 BookStack 使用 PHP 语言编写,使用 Laravel 网络框架。 BookStack 允许您根据需要设置 BookStack,例如更改名称、徽标和注册选项。 BookStack 提供了许多功能,例如多语言支持、Markdown 编辑器、可自定义、可搜索、所见即所得界面、角色和权限管理、集成身份验证等等。
在本教程中,我们将学习如何在 Ubuntu 18.04 服务器中使用 Apache 安装 Bookstack。
要求
- 一台运行 Ubuntu 18.04 的服务器。
- 具有 sudo 权限的非根用户。
入门
在开始之前,您需要使用最新版本更新您的系统。您可以通过运行以下命令来执行此操作:
sudo apt-get update -y
sudo apt-get upgrade -y
更新系统后,重新启动系统以应用更改。
安装 LAMP 服务器
首先,您需要在系统中安装 Apache Web 服务器、MariaDB 服务器、PHP 和其他 PHP 模块。您可以通过运行以下命令来安装所有这些:
sudo apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 php7.2-common php7.2-sqlite3 php7.2-curl php7.2-intl php7.2-mbstring php7.2-xmlrpc php7.2-mysql php7.2-gd php7.2-xml php7.2-cli php7.2-tidy php7.2-zip unzip wget git -y
安装所有包后,打开 php.ini 文件并进行一些更改:
sudo nano /etc/php/7.2/apache2/php.ini
进行以下更改:
memory_limit = 256M
upload_max_filesize = 150M
max_execution_time = 360
date.timezone = Asia/Kolakata
保存并关闭文件。
配置 MariaDB
默认情况下,MariaDB 是不安全的。所以你需要先保护它。您可以通过运行以下命令来保护它:
sudo mysql_secure_installation
回答以下所有问题:
Enter current password for root (enter for none): ENTER
Set root password? [Y/n]: N
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
MariaDB 安全后,登录到 MariaDB shell:
mysql -u root -p
提供您的根密码。然后,为 Bookstack 创建一个数据库和用户:
MariaDB [(none)]> CREATE DATABASE bookstackdb;
MariaDB [(none)]> CREATE USER 'bookstack'@'localhost' IDENTIFIED BY 'password';
用安全密码替换上面命令中的密码一词,不要将其记下来以备后用。接下来,使用以下命令授予 Bookstack 的所有权限:
MariaDB [(none)]> GRANT ALL ON bookstackdb.* TO 'bookstack'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
用您在上面使用的相同密码再次替换此处的密码一词。接下来,刷新权限并退出 MariaDB shell:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
安装书库
首先,您需要将 Composer 安装到您的系统中。 Composer 是 PHP 的依赖管理器。您可以使用以下命令安装 Composer:
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
接下来,将目录更改为 /var/www/html 并使用以下命令从 Git 存储库下载最新版本的 Bookstack:
cd /var/www/html/
sudo git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch
接下来,将目录更改为 Bookstack 并使用以下命令安装 PHP 所需的所有依赖项:
cd Bookstack
sudo composer install
安装所有依赖项后,使用以下命令复制示例环境配置文件:
sudo cp .env.example .env
接下来,更新 .env 文件中的数据库设置:
sudo nano .env
进行以下更改:
# Database details
DB_HOST=localhost
DB_DATABASE=bookstackdb
DB_USERNAME=bookstack
DB_PASSWORD=password
保存并关闭文件。然后,创建应用程序密钥并使用以下命令迁移数据库:
sudo php artisan key:generate
输出:
**************************************
* Application In Production! *
**************************************
Do you really wish to run this command? (yes/no) [no]:
> yes
Application key [base64:KTcNpGD5CacIz20eiKpusk02YaHm14OQTZTERizEDBw=] set successfully.
接下来,您将需要迁移数据库。您可以使用以下命令迁移数据库:
sudo php artisan migrate
您应该看到以下输出:
**************************************
* Application In Production! *
**************************************
Do you really wish to run this command? (yes/no) [no]:
> yes
Migration table created successfully.
接下来,使用以下命令为 Bookstack 目录授予适当的权限:
sudo chown -R www-data:www-data /var/www/html/BookStack/
sudo chmod -R 755 /var/www/html/BookStack/
为 Bookstack 配置 Apache
接下来,您需要为 Bookstack 创建一个 Apache 虚拟主机文件。您可以使用以下命令创建它:
sudo nano /etc/apache2/sites-available/bookstack.conf
添加以下行:
<VirtualHost *:80>
ServerAdmin
DocumentRoot /var/www/html/Bookstack
ServerName example.com
ServerAlias www.example.com
<Directory /var/www/html/Bookstack/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
将上面文件中的 example.com 和 www.example.com 替换成你自己的域名。然后保存并关闭文件并启用 Apache 虚拟主机文件并使用以下命令重写模块:
sudo a2ensite bookstack.conf
sudo a2enmod rewrite
最后,重新启动 Apache Web 服务以应用所有更改:
sudo systemctl restart apache2
访问书库
打开您的网络浏览器并输入 URL,在我的例子中是 http://example.com,您将被重定向到以下页面:

现在,提供默认用户名 [email 和密码作为密码,然后单击“登录”按钮。您将被重定向到以下页面中的 Bookstack 仪表板:

下一步应该是更改默认密码以保护 BookStack 登录。
结论
恭喜!您已经在 Ubuntu 18.04 LTS 服务器上成功安装了 Bookstack。您现在可以使用 Bookstack 轻松创建自己的 wiki 站点。如果您有任何问题,请随时问我。