Saturday, January 4, 2020

How To Install BookStack on Ubuntu 18.04 LTS with Apache2

Video Tutorial - https://youtu.be/JMZL-sX8TYk

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

BookStack is a simple, self-hosted, easy-to-use platform for organizing and storing information. BookStack is fully free and open, as well as MIT licensed.
Offcial Website: https://www.bookstackapp.com/
Guide:https://www.bookstackapp.com/docs/admin/installation/
Github:https://github.com/BookStackApp
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Our Server Specification-    
Os:Ubuntu 18.04 LTS Bionic Beaver 64Bit   |IP address- 192.168.1.50  | Hostname :www.yourdomain.com
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd ; hostname ; hostname -I ; whoami ; getconf LONG_BIT ; apt install -y build-essential software-properties-common curl gdebi net-tools wget curl sqlite3 dirmngr nano lsb-release apt-transport-https

MariaDB Repositories:
apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8 ; add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mirror.biznetgio.com/mariadb/repo/10.4/ubuntu bionic main'

Apache2 Mariadb Php PHP Modules :
add-apt-repository ppa:ondrej/php -y
apt-get update ; apt install  -y apache2 mariadb-server mariadb-client php7.0 php7.0-cli php7.0-fpm php7.0-cgi php7.0-bcmath php7.0-curl php7.0-gd php7.0-intl php7.0-json php7.0-mbstring php7.0-mysql php7.0-opcache php7.0-sqlite3 php7.0-xml php7.0-zip php7.0-snmp php7.0-json php7.0-imap php7.0-common php7.0-tidy  php7.0-mcrypt php7.0-pgsql php-pear

a2enmod dir env headers mime rewrite setenvif
sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.0/cli/php.ini ; echo ServerName 127.0.0.1 >> /etc/apache2/apache2.conf 

systemctl start apache2 mariadb ; systemctl enable apache2 mariadb
mysql_secure_installation

Create Mariadb Database :
mysql -u root -p
create database db;
grant all on db.* to 'dbuser'@'localhost' identified by 'dbpass';
quit

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
cd /var/www/html/ ; git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch
cd BookStack/ ; composer install
cp .env.example .env
nano .env
php artisan key:generate
php artisan migrate
chown -R www-data:www-data /var/www/html/ ; chmod -R 755 /var/www/html/

Setting up Apache VirtualHost :
gedit /etc/apache2/sites-available/yourdomain.conf &>/dev/null
<VirtualHost *:80>

     ServerAdmin admin@yourdomain.com
     DocumentRoot /var/www/html/BookStack/public
     ServerName www.yourdomain.com

     <Directory /var/www/html/BookStack/public/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/yourdomain_error.log
     CustomLog ${APACHE_LOG_DIR}/yourdomain_access.log combined

</VirtualHost>

a2ensite yourdomain ; a2dissite 000-default.conf  ; apache2ctl configtest ; echo "192.168.1.50 www.yourdomain.com" >> /etc/hosts ; systemctl reload apache2
http://www.yourdomain.com
admin@admin.com          | password

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

No comments:

Post a Comment