Хостване на BookStack на Managed VPS: документацията ви у вас

Хостването на BookStack на Managed VPS означава да пазите документацията си на своя собствена машина, която нашите екипи поддържат актуална и наблюдават денем и нощем. BookStack е свободен софтуер с лиценз MIT, лесен за пускане: PHP, MySQL или MariaDB и уеб сървър, без Docker. Това ръководство следва официалната му документация: инсталирането, HTTPS, данните, имейлите, сигурността, резервните копия и обновленията.

Simon Vasconcelos Lee Автор: Публикувано на 13 ноември 2026 г.Време за четене: 11 минути

Всички ръководства

Накратко

  1. Лицензът MIT на BookStack позволява всякаква употреба във фирма, а проектът поддържа една-единствена, свободна версия, без корпоративно издание.
  2. BookStack не се нуждае от Docker: изисква PHP 8.2 или по-нов, MySQL 8.0 или MariaDB 10.6 или по-нов и уеб сървър, който обслужва папката му public.
  3. Инсталирайте го със скрипта на проекта върху съвсем нов Ubuntu или на ръка с Git и Composer върху машина, която вече работи.
  4. Предоставяйте го по HTTPS с Certbot, после въведете точния адрес в APP_URL: връзките и защитените бисквитки зависят от него.
  5. Архивирайте базата, .env, public/uploads, storage/uploads и themes и пазете грижливо APP_KEY.

Какво прави BookStack

BookStack е платформа за документация, замислена да остане проста: README насочва към незабавно овладяване, с обикновени познания за текстообработка. Екипите ви пишат в нея процедурите си, документацията си и базата си знания, в браузър, на български, ако желаят.

Проектът си признава изборите: README уточнява, че BookStack не е замислен като платформа, разширяема към други употреби, и остава верен на документацията. Изобразяването му в PDF минава през dompdf, без допълнително инсталиране, с ограничени възможности; проектът документира други двигатели с EXPORT_PDF_COMMAND.

Какво позволява лицензът MIT

BookStack е публикуван с лиценз MIT от Dan Brown и сътрудниците на проекта. Той разрешава всякаква употреба, всякаква промяна и всякакво разпространение, при едно условие: да запазите бележката за авторските права и текста на лиценза във всяко копие на софтуера. ЧЗВ на проекта уточнява, че това признание се отнася до кода, който споделяте: нищо не ви задължава да показвате името или логото на BookStack във вашата инстанция.

Проектът поддържа една-единствена, свободна и безплатна версия: не предлага корпоративно издание и няма официален хостинг, нито планове да открие такъв. Продава за сметка на това планове за поддръжка, които допринасят за финансирането му заедно с даренията и спонсорствата. BookStack се инсталира следователно на вашия сървър, без да купувате лиценз.

Изискванията на BookStack

ЕлементИзискана версияУточнение
PHP8.2 или по-новРазширения curl, dom, gd, iconv, mbstring, mysqlnd, openssl, pdo, pdo_mysql, tokenizer, xml и zip
База данниMySQL 8.0 или по-нов, MariaDB 10.6 или по-новЕдна-единствена база, чиято схема BookStack управлява сам
Composer2.2 или по-новЗа зависимостите на PHP
GitБез посочена версияЗа изтегляне на кода и прилагане на обновленията
Уеб сървърСъвместим с PHPApache или Nginx, уеб коренът върху папката public

Docker остава по желание. Проектът не публикува официален образ: инсталациите в контейнер идват от проекти на общността, LinuxServer.io и solidnerd. Това ръководство следва официалния път, PHP и MySQL директно на сървъра, който не изисква нищо повече.

Документацията отхвърля споделения PHP хостинг: BookStack изисква сървър, който администрирате вие. Тя не дава числа за нужните памет и процесор. На Managed VPS ни опишете как го използвате, броя на хората и обема на изображенията и прикачените файлове и ще ви препоръчаме подходящия размер.

Инсталиране на BookStack

Проектът предлага два пътя: скрипт за Ubuntu, най-краткият на нов сървър, и ръчно инсталиране за всички останали случаи.

Със скрипта на проекта, върху съвсем нов Ubuntu

СистемаКакво инсталира скриптът
Ubuntu 26.04Apache, MySQL 8.4 и PHP 8.5
Ubuntu 24.04Apache, MySQL 8.0 и PHP 8.3
Ubuntu 22.04Apache, MySQL 8.0 и PHP 8.4
Терминал, за Ubuntu 24.04
wget https://codeberg.org/bookstack/devops/raw/branch/main/scripts/installation-ubuntu-24.04.sh
chmod a+x installation-ubuntu-24.04.sh
sudo ./installation-ubuntu-24.04.sh

Тези скриптове са запазени за прясно инсталирана система: могат да презапишат съществуваща уеб конфигурация. Оставят настрана и две теми, настройките на имейла и сигурността на системата, които да предвидите отделно.

Скриптът поставя BookStack в /var/www/bookstack. Този за Ubuntu 26.04 пита за домейна и адреса на администраторския акаунт, после показва накрая случайно генерирана парола, която липсва в журнала му: запишете я. С друг скрипт отбележете достъпите, показани накрая, и сменете всеки достъп по подразбиране още при първото влизане.

На ръка, на всяка друга машина

Започнете с базата данни: една база и потребител, ограничен до тази база. Скриптът на проекта процедира така, с паролата по ваш избор вместо change-me:

Терминал
sudo mysql -u root --execute="CREATE DATABASE bookstack;"
sudo mysql -u root --execute="CREATE USER 'bookstack'@'localhost' IDENTIFIED BY 'change-me';"
sudo mysql -u root --execute="GRANT ALL ON bookstack.* TO 'bookstack'@'localhost';FLUSH PRIVILEGES;"

Изтеглете после клона release, задайте правата, които документацията дава за /var/www/bookstack, после инсталирайте зависимостите:

Терминал
cd /var/www
sudo git clone https://source.bookstackapp.com/bookstack.git --branch release --single-branch bookstack
sudo chown -R $USER:www-data /var/www/bookstack
sudo chmod -R 755 /var/www/bookstack
sudo chmod -R 775 /var/www/bookstack/storage /var/www/bookstack/bootstrap/cache /var/www/bookstack/public/uploads
cd bookstack
composer install --no-dev
cp .env.example .env
sudo chmod 640 .env

Въведете базата и адреса в .env:

.env
APP_URL=https://docs.example.com
DB_HOST=localhost
DB_DATABASE=bookstack
DB_USERNAME=bookstack
DB_PASSWORD=change-me
Терминал, в /var/www/bookstack
php artisan key:generate
php artisan migrate

Насочете накрая уеб корена към папката public: DocumentRoot в Apache, root в Nginx. Без Apache или когато файловете .htaccess са изключени, добавете правилата за пренаписване на адреси: проектът публикува примери за Apache и за Nginx.

Ръчното инсталиране се отваря с акаунта admin@admin.com и паролата password. Сменете адреса и паролата още при първото влизане.

HTTPS и APP_URL

Посетителите пристигат на портове 80 и 443, на името на домейна на сървъра. Създайте за това име записи A и AAAA, после поискайте сертификата: скриптът за Ubuntu 26.04 конфигурира Apache само на порт 80, а страницата за инсталиране оставя HTTPS на вас. Certbot поставя сертификата Let's Encrypt, приспособява Apache и сам подновява сертификата. При Nginx заменете --apache с --nginx.

Терминал
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/local/bin/certbot
sudo certbot --apache -d docs.example.com

Сменете после адреса на HTTPS в .env. APP_URL трябва да съответства точно на адреса за посещение, включително префикса: разминаването се познава по липсващи стилове, непропорционални икони и счупени менюта. Адрес с https сам включва защитените бисквитки.

.env
APP_URL=https://docs.example.com

Ако страници вече съществуват, връзките им запазват стария адрес в базата. Архивирайте базата, после изпълнете командата на проекта:

Терминал, в /var/www/bookstack
php artisan bookstack:update-url http://docs.example.com https://docs.example.com

BookStack се предоставя в корена на домейн или поддомейн, а документацията описва и инсталиране в подпапка, като example.com/bookstack. Ако пред Apache се добави обратен прокси, декларирайте адреса му в APP_PROXIES: без него одитният журнал и ограничаването на скоростта виждат адреса на проксито вместо този на посетителите. Документацията резервира APP_PROXIES="*" за диагностика.

Къде живеят данните ви

МестоположениеКакво съдържа
Базата MySQL или MariaDBВсички данни на приложението, включително съдържанието на страниците ви
.envКонфигурацията, с APP_KEY и достъпите до базата и до имейл сървъра
public/uploadsИзображенията, със съхранението по подразбиране
storage/uploadsПрикачените файлове, защитени от разрешенията на BookStack
themesВашите персонализации на темата, ако има такива

Пазете един и същ APP_KEY във времето и го архивирайте. BookStack го използва, за да шифрова по-специално тайните на двуфакторното удостоверяване: смяната му може да развали тези функции, а от версия 26.09 приложението връща грешка, ако липсва.

Изображенията са публични по подразбиране

Със съхранението по подразбиране уеб сървърът обслужва изображенията директно, което е бързо, и всеки, който знае адреса им, може да ги отвори. За вътрешна документация изборът се прави в STORAGE_TYPE:

<code>STORAGE_TYPE</code>ИзображенияДостъп
localpublic/uploads/imagesОбслужвани директно от уеб сървъра
local_securestorage/uploads/imagesЗапазени за влезлите хора, освен ако публичният достъп е включен
local_secure_restrictedstorage/uploads/imagesСпоред разрешенията на страницата, най-ресурсоемката опция
s3Бъкет, съвместим със S3Изображения, направени публични при изпращането

За тежките файлове три настройки трябва да са съгласувани: FILE_UPLOAD_SIZE_LIMIT в .env, post_max_size и upload_max_filesize в php.ini и client_max_body_size в Nginx, който е 1 MB по подразбиране.

Две настройки са важни и за жива документация: всяка страница пази 100 ревизии по подразбиране (REVISION_LIMIT), а кошчето съхранява изтритите елементи 30 дни (RECYCLE_BIN_LIFETIME).

Имейлите: SMTP и опашка

BookStack изпраща имейли за потвърждение на адресите, забравена парола, покани и известия. От VPS на Simafri изпращането минава през удостоверено SMTP реле, на порт 587: адресът на пощенски акаунт, който вече имате, или Simafri Suite.

.env
MAIL_DRIVER=smtp
MAIL_HOST=smtp.example.com
MAIL_PORT=587
MAIL_ENCRYPTION=tls
MAIL_USERNAME=bookstack@example.com
MAIL_PASSWORD=change-me
MAIL_FROM=bookstack@example.com
MAIL_FROM_NAME=BookStack

Проверете резултата в „Settings“, „Maintenance“, с действието „Send a Test Email“, което показва срещнатите грешки. Неуспех при покана се показва на екрана, докато неуспех при известие остава в журнала на приложението.

Изпращане във фонов режим

По подразбиране BookStack изпраща имейли и webhooks по време на заявката, което може да забави страниците. За да минете във фонов режим, запишете QUEUE_CONNECTION=database в .env и пуснете услуга, с примера, който документацията дава за инсталация на Ubuntu чрез скрипт:

/etc/systemd/system/bookstack-queue.service
[Unit]
Description=BookStack Queue Worker

[Service]
User=www-data
Group=www-data
Restart=always
ExecStart=/usr/bin/php /var/www/bookstack/artisan queue:work --sleep=3 --tries=1 --max-time=3600

[Install]
WantedBy=multi-user.target
Терминал
sudo systemctl daemon-reload
sudo systemctl enable bookstack-queue.service
sudo systemctl start bookstack-queue.service

Защита на инстанцията BookStack

Документацията за сигурност дава списък, който да изпълните още при инсталирането:

  1. Сменете адреса и паролата на първия администратор.
  2. Проверете дали уеб сървърът обслужва единствено папката public, особено ако BookStack живее под /var/www.
  3. Ограничете потребителя на базата до единствената база на BookStack.
  4. Въведете APP_URL, за да не могат адресите, генерирани от системата, да бъдат манипулирани.
  5. Прегледайте настройките за регистрация и публичен достъп, после ролите.

Двуфакторното удостоверяване се налага после по роли. Абонирайте се и за пощенския списък за сигурност на проекта, за да получавате предупрежденията му. Адресът /status служи за наблюдение: отговаря 200, когато всичко е наред, и код за грешка, равен или по-голям от 400, в противен случай.

PHP е също толкова важен, колкото BookStack. Проектът публикува на 21 октомври 2026 г. предупреждение за критично обновяване на PHP, поправено в 8.5.12, 8.4.27, 8.3.36 и 8.2.35. Ubuntu публикува тези поправки под собствени номера на пакети, като 8.3.6-0ubuntu0.24.04.13 за Ubuntu 24.04.

За съдържанието ви оставете филтрирането, включено по подразбиране, и резервирайте облекчаването му за инстанции, в които пишат само доверени хора. Ако администраторски акаунт се загуби, php artisan bookstack:create-admin създава друг, а php artisan bookstack:reset-mfa премахва двуфакторното удостоверяване на потребител.

Резервни копия и обновления

Пълното резервно копие обединява базата и четирите местоположения на файлове, присъщи на вашата инстанция. Експортите на съдържание служат за друго: документацията уточнява, че не заместват резервно копие.

Терминал, в /var/www/bookstack
sudo mysqldump -u root bookstack > bookstack.backup.sql
tar -czvf bookstack-files-backup.tar.gz .env public/uploads storage/uploads themes

Първият ред е за инсталация чрез скрипт, където root на MySQL се свързва чрез sudo; другаде напишете mysqldump -u bookstack -p bookstack. Съхранете тези два файла отделно, за предпочитане на друга машина. Архивът съдържа .env, следователно APP_KEY и паролите ви: третирайте го като тайна.

Възстановяване

На нова машина инсталирайте BookStack, без да изпълнявате php artisan migrate, стъпка, която да коментирате в скрипта, ако го използвате, после възстановете базата и файловете, като запазите първоначалния APP_KEY:

Терминал, в /var/www/bookstack
sudo mysql -u root bookstack < bookstack.backup.sql
tar -xvzf bookstack-files-backup.tar.gz

Ако инсталираната версия е по-нова от резервното копие, изпълнете после php artisan migrate. Върнете правата за запис на уеб сървъра върху възстановените папки. Ако адресът се е променил, поправете APP_URL и изпълнете bookstack:update-url.

Обновяване

Архивирайте базата и файловете преди всяко обновяване, после, от папката на BookStack:

Терминал, в /var/www/bookstack
git pull origin release
composer install --no-dev
php artisan migrate
php artisan cache:clear
php artisan config:clear
php artisan view:clear

Скриптът за Ubuntu 26.04 инсталира BookStack без Composer. Страницата с обновления предлага тогава, в бета, ./bookstack-system-cli download-vendor вместо composer install --no-dev. Същият този инструмент умее да архивира и възстановява, но проектът още не го смята за готов за продукция: тествайте го, преди да му се доверите.

Документацията поддържа списък с указания, присъщи на всяка версия, които да прочетете за целевата версия. Няколко примера:

Пробивите се поправят във версии за поддръжка, като 26.09.3 от 11 ноември 2026 г.: изображенията и чертежите на страница чернова или в кошчето оставаха достъпни и можеха да се променят, а личната чернова на редактор можеше да стане видима за други хора.

Кой какво прави на Managed VPS

Самостоятелното хостване изисква да поддържате сървъра освен приложението. На Managed VPS нашите екипи поемат сървъра и следят проактивно вашата инстанция; BookStack остава ваш софтуер, с неговите настройки и данни.

ТемаНашите екипиВие
СървърътОбновления на системата и на сигурността, включително намеси на сървъраМоментът, който пасва на вашата дейност
НаблюдениетоСървър, следен денонощно, 7 дни в седмицата, с намеса, без да се чака обаждането виВашите потребители, техните роли и вашето съдържание
BookStackПроактивно проследяване: грешки, забавяния и дисково пространство се откриват, препоръчва се корекцияИнсталирането, обновяванията и настройките му, които прилагате вие или вашият AI асистент
Резервните копияВсяка нощ, криптирани и пазени извън машината; възстановяването е включеноЗаявката за възстановяване, когато ви потрябва
МиграциятаСегашният ви сървър е мигриран, безплатноМоментът на превключването

Ако предпочитате нашите екипи да се намесват в самото приложение, тази услуга се фактурира на час или на фиксирана цена, с оферта, съобщена преди намесата.

BookStack, на сървър, поддържан вместо вас

С Managed VPS от Simafri нашите екипи поддържат актуален сървъра на вашата инстанция на BookStack, наблюдават го денем и нощем и се намесват, без да чакат обаждането ви; те следят проактивно и вашата инстанция и ви препоръчват полезните корекции, които прилагате вие или вашият AI асистент. Резервните копия се криптират всяка нощ и се пазят извън машината, възстановяването им е включено, а миграцията от сегашния ви сървър е безплатна.

Разгледайте Managed VPS

Често задавани въпроси

Безплатен ли е BookStack за фирма?

Да. BookStack е с лиценз MIT, който разрешава всякаква употреба, а проектът поддържа една-единствена версия, без корпоративно издание. Предлага и платени планове за поддръжка, които остават по желание. Остава цената на сървъра, на който работи.

Как се инсталира BookStack на Ubuntu?

На съвсем нов Ubuntu 26.04, 24.04 или 22.04 изтеглете скрипта за инсталиране на проекта, направете го изпълним и го стартирайте със sudo. Той инсталира Apache, MySQL и PHP. На машина, която вече работи, следвайте ръчното инсталиране, защото скриптът може да презапише съществуваща уеб конфигурация.

Има ли официален образ на Docker за BookStack?

Не. Инсталациите в контейнер идват от проекти на общността, LinuxServer.io и solidnerd. Официалният път инсталира BookStack директно на сървъра, с PHP, MySQL или MariaDB и уеб сървър, на ръка или със скрипта за Ubuntu.

Каква конфигурация е нужна за хостване на BookStack?

PHP 8.2 или по-нов, MySQL 8.0 или MariaDB 10.6 или по-нов, Composer 2.2 или по-нов, Git и уеб сървър, съвместим с PHP. Проектът не дава числа за паметта и процесора и отхвърля споделения PHP хостинг.

Каква е паролата по подразбиране на BookStack?

Ръчното инсталиране се отваря с admin@admin.com и паролата password, които да се сменят още при първото влизане. Скриптът за Ubuntu 26.04 показва накрая случайно генерирана парола. При загубен достъп php artisan bookstack:create-admin създава нов администратор.

Как се архивира BookStack?

Експортирайте базата с mysqldump и архивирайте .env, public/uploads, storage/uploads и themes. Запазете първоначалния APP_KEY при възстановяване и съхранете всичко извън машината. Експортите на съдържание на BookStack не заместват това резервно копие.

Как се настройват имейлите на BookStack?

Въведете MAIL_DRIVER, MAIL_HOST, MAIL_PORT, MAIL_ENCRYPTION, MAIL_USERNAME, MAIL_PASSWORD, MAIL_FROM и MAIL_FROM_NAME във файла .env, после изпълнете Send a Test Email в Settings, Maintenance. От VPS на Simafri изпращането минава през удостоверено SMTP реле, на порт 587.

Покрива ли Managed VPS BookStack?

Managed VPS покрива сървъра: система, сигурност, наблюдение и резервни копия. Нашите екипи следят проактивно и вашата инстанция и ви препоръчват полезните корекции, които прилагате вие. Намеса в самото приложение се фактурира на час или на фиксирана цена.

Източници и официална документация

Свързани ръководства

Разлика между управляван и неуправляван VPS: кой какво правиРазликата между управляван и неуправляван VPS се свежда до един въпрос: кой се грижи за сървъра, след като той вече работи. Думата „управляван“ обаче няма официално определение и от един хостинг доставчик до друг обхваща всичко от простото инсталиране на системата до цялостното стопанисване на сървъра. Това ръководство показва кой какво прави, ред по ред, заедно с междинното ниво на експертното съдействие, и дава въпросите, които премахват двусмислието, преди да подпишете.Резервни копия на VPS: какво да проверите, преди да подпишетеПочти всяко предложение за VPS обявява „включени резервни копия“. Зад тези думи може да стои копие всяка нощ, пазено извън машината и възстановявано от експерти, или моментна снимка, поставена на същия диск като сървъра. Това ръководство дава въпросите, които правят разликата, какво означава всеки отговор и как да проверите, че едно резервно копие наистина се възстановява.Колко RAM е нужна за VPS: правилото, според всяка употребаПаметта (RAM) е ресурсът, който най-често определя размера на един VPS: тя свършва първа, а когато свърши, сървърът не се забавя, а спира услуги. Това ръководство дава правилото за изчисление, колко консумира всеки компонент на едно приложение, типични профили и начина да измерите сървър, който вече работи.
Свържете се с нас