New Page
Первинні налаштування**
Треба створити користувача **sudo**sudo (щоб не працювати з під **root**root)
adduser oleksandr-dзанести користувача в групу **sudo**
sudo usermod -aG sudo oleksandr-d
Встановлюю PHP та модулі
sudo apt install -y php-cli php-openssl php-mbstring php-iconv php-tokenizer php-gd php-mysql php-xml php-ldap php-curl php-gd php-simplexml php-dom php-pdoВстановлюю php-fpm, щоб використовувати nginx, як web-сервер.
sudo apt install php-fpmВстановлюю MySQL
sudo apt install mysql-serverНалаштовую php-fpm
sudo nano /etc/php/8.3/fpm/php.inifile_uploads = OnВстановлюю Composer
Завантажте сценарій інсталятора Composer.
curl -sS https://getcomposer.org/installer -o composer-setup.phpВиконайте наведені нижче команди, щоб перевірити інсталятор.
HASH=`curl -sS https://composer.github.io/installer.sig`Наведені вище команди захоплюють хеш-значення інсталятора та зіставляють його із завантаженим сценарієм. Ви повинні побачити такі дані, якщо інсталятор безпечний для запуску.
Installer verifiedВстановіть Composer.
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composerПеревірте інсталяцію, перевіривши її версію.
composer --versionСтворюю базу даних bookstack з користувачем bookstackuser та даю йому повний доступ до цієї бази даних.
sudo mysqlCREATE DATABASE bookstack;Дозволяю доступ по ssh через порт 22
sudo ufw allow sshВстановлюємо Nginx та надаю доступ до портів
sudo apt install nginxПеревіряємо налаштування брандмауера (необхідні налаштування є в списку відповіді) та потім вмикаємо його
sudo ufw app listЗавантажую сам BookStack та налаштовую
Створіть кореневу папку для програми BookStack.
sudo mkdir -p /var/www/bookstackРоблю власником себе (поточного юзера з якого працюю), щоб не працювати постійно з sudo та для nginx
sudo chown -R oleksandr-d:www-data /var/www/bookstackПереходжу в створену папку, та клоную репозиторій з BookStack (крапка в кінці треба, щоб розпакувалось в поточну папку. а не створювалась нова).
cd /var/www/bookstackВстановлюємо Composer для bookstack
composer install --no-dev
Копіюю файл, та налаштовую дані для додатку
cp .env.example .envВідкрийте файл для редагування.
nano .envЗаповніть URL-адресу програми та дані бази даних. Якщо ви збираєтеся використовувати функції електронної пошти, заповніть дані SMTP або видаліть їх із файлу.
APP_URL=https://doc.rtb-system.onlineДалі генерую ключ для artisan який запишеться в файл .env
php artisan key:generateНалаштовую додаткові права для юзера до каталогу з bookstack
sudo chown -R oleksandr-d:www-data /var/www/bookstackРоблю artisan міграцію
php artisan migrateДалі встановимо та налаштуємо certbot та конфігурацію nginx
Спочатку зупинимо nginx
sudo systemctl stop nginx.serviceВстановлюємо Certbot
sudo apt install snapdПеревірити версію
certbot --versionГенеруємо сертифікат
sudo certbot certonlyТепер запускаю та вмикаю nginx
sudo systemctl start nginx.serviceНалаштовую конфігурацію для nginx
sudo nano /etc/nginx/sites-available/bookstack# HTTP — редірект на HTTPSsudo ln -s /etc/nginx/sites-available/bookstack /etc/nginx/sites-enabled/sudo systemctl restart nginx.serviceБула помилка додав ще раз права на необхідні папки.