Cómo instalar BookStack en Ubuntu 18.04 LTS

Página de inicio de sesión de la pila de libros

BookStack es una plataforma de gestión del conocimiento gratuita y de código abierto que se puede utilizar para crear documentación y contenido de wikis para sus usuarios. BookStack está escrito en lenguaje PHP y utiliza el marco web Laravel. BookStack le permite configurar BookStack según sus necesidades, como cambiar el nombre, el logotipo y las opciones de registro. BookStack ofrece muchas funciones, como compatibilidad con varios idiomas, editor de Markdown, personalizable, con capacidad de búsqueda, interfaz WYSIWYG, gestión de roles y permisos, autenticación integrada y muchas más.

En este tutorial, aprenderemos cómo instalar Bookstack con Apache en el servidor Ubuntu 18.04.

Requisitos

  • Un servidor con Ubuntu 18.04.
  • Un usuario no root con privilegios sudo.

Empezando

Antes de comenzar, deberá actualizar su sistema con la última versión. Puede hacer esto ejecutando el siguiente comando:

sudo apt-get update -y
sudo apt-get upgrade -y

Una vez que su sistema esté actualizado, reinicie el sistema para aplicar los cambios.

Instalar servidor LAMP

Primero, deberá instalar el servidor web Apache, el servidor MariaDB, PHP y otros módulos PHP en su sistema. Puede instalarlos todos ejecutando el siguiente comando:

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

Una vez que todos los paquetes estén instalados, abra el archivo php.ini y realice algunos cambios:

sudo nano /etc/php/7.2/apache2/php.ini

Realice los siguientes cambios:

memory_limit = 256M
upload_max_filesize = 150M
max_execution_time = 360
date.timezone = Asia/Kolakata

Guarde y cierre el archivo.

Configurar MariaDB

De forma predeterminada, MariaDB no está protegido. Por lo tanto, deberá asegurarlo primero. Puede asegurarlo ejecutando el siguiente comando:

sudo mysql_secure_installation

Responda todas las preguntas de la siguiente manera:

    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

Una vez que MariaDB esté protegida, inicie sesión en el shell de MariaDB:

mysql -u root -p

Proporcione su contraseña raíz. Luego, crea una base de datos y un usuario para Bookstack:

MariaDB [(none)]> CREATE DATABASE bookstackdb;
MariaDB [(none)]> CREATE USER 'bookstack'@'localhost' IDENTIFIED BY 'password';

Reemplace la palabra ‘contraseña’ en el comando anterior con una contraseña segura y no la baje para su uso posterior. A continuación, otorgue todos los privilegios a Bookstack con el siguiente comando:

MariaDB [(none)]> GRANT ALL ON bookstackdb.* TO 'bookstack'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Reemplace la palabra ‘contraseña’ nuevamente aquí con la misma contraseña que usó anteriormente. A continuación, elimine los privilegios y salga del shell de MariaDB:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Instalar la pila de libros

Primero, deberá instalar Composer en su sistema. Composer es un administrador de dependencias para PHP. Puede instalar Composer con el siguiente comando:

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

A continuación, cambie el directorio a /var/www/html y descargue la última versión de Bookstack desde el repositorio de Git con el siguiente comando:

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

A continuación, cambie el directorio a Bookstack e instale todas las dependencias requeridas por PHP con el siguiente comando:

cd Bookstack
sudo composer install

Una vez que todas las dependencias estén instaladas, copie el archivo de configuración del entorno de muestra con el siguiente comando:

sudo cp .env.example .env

A continuación, actualice la configuración de la base de datos en el archivo .env:

sudo nano .env

Realice los siguientes cambios:

# Database details
DB_HOST=localhost
DB_DATABASE=bookstackdb
DB_USERNAME=bookstack
DB_PASSWORD=password

Guarde y cierre el archivo. Luego, cree la clave de la aplicación y migre la base de datos con el siguiente comando:

sudo php artisan key:generate

Producción:

**************************************
*     Application In Production!     *
**************************************

 Do you really wish to run this command? (yes/no) [no]:
 > yes

Application key [base64:KTcNpGD5CacIz20eiKpusk02YaHm14OQTZTERizEDBw=] set successfully.

A continuación, deberá migrar la base de datos. Puede migrar la base de datos con el siguiente comando:

sudo php artisan migrate

Debería ver el siguiente resultado:

**************************************
*     Application In Production!     *
**************************************

 Do you really wish to run this command? (yes/no) [no]:
 > yes

Migration table created successfully.

A continuación, otorgue los permisos adecuados al directorio Bookstack con el siguiente comando:

sudo chown -R www-data:www-data /var/www/html/BookStack/
sudo chmod -R 755 /var/www/html/BookStack/

Configurar Apache para Bookstack

A continuación, deberá crear un archivo de host virtual de Apache para Bookstack. Puedes crearlo con el siguiente comando:

sudo nano /etc/apache2/sites-available/bookstack.conf

Agregue las siguientes líneas:

<VirtualHost *:80>
     ServerAdmin [email protected]
     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>

Reemplace ‘example.com’ y ‘www.example.com’ en el archivo anterior con su propio nombre de dominio. Luego guarde y cierre el archivo y habilite el archivo de host virtual de Apache y reescriba el módulo con los siguientes comandos:

sudo a2ensite bookstack.conf
sudo a2enmod rewrite

Finalmente, reinicie el servicio web de Apache para aplicar todos los cambios:

sudo systemctl restart apache2

Acceder a la pila de libros

Abra su navegador web y escriba la URL, en mi caso es http://example.com, será redirigido a la siguiente página:

Página de inicio de sesión de la pila de libros

Ahora, proporcione el nombre de usuario predeterminado como [email protected] y clave como contraseña, luego haga clic en el INICIAR SESIÓN botón. Se le redirigirá al panel de control de Bookstack en la siguiente página:

Iniciar sesión con nombre de usuario y contraseña predeterminados

El siguiente paso debe ser cambiar la contraseña predeterminada para asegurar el inicio de sesión de BookStack.

Conclusión

¡Felicidades! ha instalado exitosamente Bookstack en el servidor Ubuntu 18.04 LTS. Ahora puede crear fácilmente su propio sitio wiki usando Bookstack. No dude en preguntarme si tiene alguna pregunta.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *