如何在 Ubuntu 16.04 LTS 上安装 BookStack如何在 Ubuntu 16.04 LTS 上安装 BookStack如何在 Ubuntu 16.04 LTS 上安装 BookStack如何在 Ubuntu 16.04 LTS 上安装 BookStack
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 16.04 LTS 上安装 BookStack

在此页

  1. 先决条件
  2. 我们将做什么
  3. 第 1 步 - 更新和升级 Ubuntu
  4. 第 2 步 - 在 Ubuntu 16.04 上安装 Nginx
  5. 第 3 步 - 安装和配置 PHP-FPM
  6. 第 4 步 - 安装和配置 MariaDB 数据库
  7. 第 5 步 - 安装 PHP Composer
  8. 第 6 步 - 安装 BookStack
  9. 第 7 步 - 为 BookStack 配置 Nginx 虚拟主机
  10. 第 8 步 - 测试
  11. 参考资料

BookStack 是一个开源平台,可为您的项目创建文档/wiki 内容。它是用 PHP 编程语言和 Laravel 网络框架编写的。基本上,您的项目文档/wiki 会作为一本书存储在 BookStack 上,然后是章节和页面。它使您可以更轻松地创建和阅读基于章节和页面的书籍文档。

在本教程中,我将逐步向您展示如何在 LEMP(Linux、Nginx、PHP-FPM、MySQL/MariaDB)堆栈下的 Ubuntu 16.04 上安装和配置 BookStack。本教程将涵盖详细信息,包括如何安装 PHP Composer 以及如何使用命令行手动创建 MySQL 数据库。

先决条件

  • Ubuntu 16.04
  • 根权限

我们将要做什么

  1. 更新存储库和升级系统
  2. 在 Ubuntu 16.04 上安装 Nginx
  3. 安装和配置 PHP-FPM
  4. 安装和配置 MariaDB 数据库
  5. 安装 PHP 编写器
  6. 安装和配置 BookStack
  7. 为 BookStack 配置 Nginx 虚拟主机
  8. 测试

第 1 步 - 更新和升级 Ubuntu

在为 BookStack 安装安装任何软件包之前,请确保您的 Ubuntu 存储库和系统是最新的。

如果没有,您可以更新 Ubuntu 存储库并使用以下命令升级系统。

sudo apt update
sudo apt upgrade

第 2 步 - 在 Ubuntu 16.04 上安装 Nginx

在本教程中,我们将在 LEMP 堆栈下运行 BookStack 平台,我们将从 Ubuntu 存储库安装 Nginx Web 服务器。

使用下面的 apt 命令在 Ubuntu 上安装 Nginx Web 服务器。

sudo apt install nginx -y

安装完成后,启动该服务并使其在每次系统启动时启动。

systemctl start nginx
systemctl enable nginx

现在检查 nginx 服务状态和系统上的开放端口,确保您在列表中获得 HTTP 端口 80。

运行下面的命令。

systemctl status nginx
netstat -plntu

以下是结果。

Nginx Web 服务器安装在 Ubuntu 16.04 服务器上。

第 3 步 - 安装和配置 PHP-FPM

在此步骤中,我们将安装和配置 PHP-FPM 7.0。我们将安装 PHP 和 PHP-FPM 以及 BookStack 所需的一些扩展,包括 PDO、Tokenizer、GD、Tidy、MBString 和 OpenSSL。

通过运行下面的 apt 命令安装 PHP 和 PHP-FPM 以及所有必需的扩展。

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

安装完成后,我们需要配置php fpm和php cli的php.ini配置文件。

使用 vim 编辑 fpm 配置的 php.ini 文件。

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

取消注释 cgi.fix_pathinfo 行并将值更改为 0。

cgi.fix_pathinfo=0

保存并退出。

使用 vim 编辑用于 cli 配置的 php.ini 文件。

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

取消注释 cgi.fix_pathinfo 行并将值更改为 0。

cgi.fix_pathinfo=0

保存并退出。

现在启动 PHP-FPM 服务并让它在每次系统启动时启动。

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

在 Ubuntu 系统上,PHP-FPM 将在 sock 文件下运行 - 使用下面的 netstat 命令检查它。

netstat -pl | grep fpm

你会得到如下结果。

已安装具有所有必需扩展的 PHP 和 PHP-FPM。

第 4 步 - 安装和配置 MariaDB 数据库

BookStack 仅提供对 MySQL 数据库的支持,并且只能在 MySQL 版本 >= 5.6 下运行。对于本教程,我们将使用可以从 Ubuntu 存储库安装的最新版本的 MariaDB。

运行以下 apt 命令来安装 MariaDB 数据库。

sudo apt install mariadb-server mariadb-client -y

安装完成后,启动该服务并使其在每次系统启动时启动。

systemctl start mysql
systemctl enable mysql

现在我们需要为数据库配置root密码。

运行以下命令设置根数据库密码。

mysql_secure_installation

系统会要求您输入新的 MySQL root 密码 - 输入 root 用户的密码,然后按 Enter。对于其他人,只需将 Y 键入是,然后再次输入。

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 root 密码现已设置。

接下来,我们需要为 BookStack 安装创建一个新的数据库。

我们将使用用户 bookstak 和密码 [email 创建一个名为 bookstackdb 的新数据库。

以 root 用户身份登录到 MySQL shell。

mysql -u root -p

现在运行下面的所有 MySQL 查询。

create database bookstackdb;
create user ';
flush privileges;
exit;

Ubuntu系统已经安装了MySQL/MariaDB,BookStack安装的数据库也已经创建。

第 5 步 - 安装 PHP Composer

Composer 是 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

您将获得系统上安装的作曲家版本。

PHP Composer 现已安装在 Ubuntu 16.04 上。

第 6 步 - 安装 BookStack

在此步骤中,我们将在 /var/www 目录下安装 BookStack,该目录将成为应用程序的根目录。

转到 /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

保存并退出。

并将 BookStack 目录的所有者更改为 www-data 用户和组。

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

接下来,我们需要为 BookStack 生成唯一的应用程序密钥,并使用 PHP artisan 命令更新数据库模式。

在根应用程序目录 /var/www/BookStack 上,运行如下所示的命令。

php artisan key:generate
php artisan migrate

系统将要求您确认,键入 yes 并按 Enter。

等待命令生成秘钥,导入数据库scheme。

BookStack 现已安装到 Ubuntu 16.04 上,生成了秘密唯一密钥应用程序,并更新了 BookStack 的数据库方案。

第 7 步 - 为 BookStack 配置 Nginx 虚拟主机

在这一步中,我们将为 BookStack 配置 nginx 虚拟主机。我们将使用 book.hakase-labs.co 作为我们 BookStack URL 的域名。

转到 /etc/nginx 目录并使用 vim 编辑器在 sites-available 目录下创建一个新的虚拟主机文件 bookstack。

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

粘贴下面的配置。

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

保存并退出。

现在激活虚拟主机并测试配置。

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

确保没有错误,如下所示。

现在重启 Nginx 服务。

systemctl restart nginx

BookStack 的 Nginx 虚拟主机已添加并激活。

第 8 步 - 测试

打开您的网络浏览器并在地址栏中输入 BookStack URL,我的是 http://book.hakase-labs.co/

您将被重定向到登录/页面,如下所示。

输入默认管理员用户 [email 和密码 password,然后按登录按钮。

您将获得 BookStack 用户仪表板。

单击“设置”菜单,您将进入设置页面。

现在单击用户菜单,然后单击管理员用户。使用您的电子邮件地址更改默认电子邮件,使用您自己的秘密密码更改密码。

然后单击保存按钮。

这样,在 Ubuntu 16.04 上使用 LEMP(Linux、Nginx、MariaDB 和 PHP-FPM)堆栈的 BookStack 安装已经成功完成。

参考

  • https://www.bookstackapp.com/docs/

©2015-2025 艾丽卡 support@alaica.com