Găzduirea BookStack pe un Managed VPS: documentația pe propriul server

Găzduirea BookStack pe un Managed VPS înseamnă să păstrați documentația dumneavoastră pe o mașină a dumneavoastră, pe care echipele noastre o țin la zi și o supraveghează zi și noapte. BookStack este un software liber sub licență MIT, simplu de rulat: PHP, MySQL sau MariaDB și un server web, fără Docker. Acest ghid urmează documentația sa oficială: instalarea, HTTPS, datele, e-mailurile, securitatea, backupurile și actualizările.

Simon Vasconcelos Lee Autor: Publicat la 13 noiembrie 2026Timp de citire: 11 minute

Toate ghidurile

Esențialul

  1. Licența MIT a BookStack permite orice utilizare în firmă, iar proiectul ține o singură versiune, liberă, fără ediție enterprise.
  2. BookStack se descurcă fără Docker: cere PHP 8.2 sau mai recent, MySQL 8.0 sau MariaDB 10.6 sau mai recent și un server web care servește directorul său public.
  3. Instalați-l cu scriptul proiectului pe un Ubuntu proaspăt instalat sau manual, cu Git și Composer, pe o mașină deja în funcțiune.
  4. Serviți-l în HTTPS cu Certbot, apoi scrieți adresa exactă în APP_URL: linkurile și cookie-urile securizate depind de ea.
  5. Salvați baza, .env, public/uploads, storage/uploads și themes și păstrați cu grijă APP_KEY.

Ce face BookStack

BookStack este o platformă de documentație gândită să rămână simplă: README-ul său țintește o preluare imediată, cu simple noțiuni de procesare de text. Echipele dumneavoastră își scriu acolo procedurile, documentația și baza de cunoștințe, într-un browser, în română dacă doresc.

Proiectul își asumă alegerile: README-ul său precizează că BookStack nu este conceput ca o platformă extensibilă către alte utilizări și că rămâne ancorat în documentație. Randarea sa PDF trece prin dompdf, fără instalare în plus, cu capacități limitate; proiectul documentează alte motoare cu EXPORT_PDF_COMMAND.

Ce permite licența MIT

BookStack este publicat sub licența MIT de Dan Brown și de contributorii proiectului. Ea permite orice utilizare, orice modificare și orice distribuire, cu o singură condiție: păstrarea mențiunii de copyright și a textului licenței în orice copie a software-ului. FAQ-ul proiectului precizează că această atribuire privește codul pe care îl partajați: nimic nu vă obligă să afișați numele sau logoul BookStack pe instanța dumneavoastră.

Proiectul ține o singură versiune, liberă și gratuită: nu propune o ediție enterprise și nu are găzduire oficială, nici proiectul de a deschide una. În schimb, vinde formule de suport, care contribuie la finanțarea lui împreună cu donațiile și sponsorizările. BookStack se instalează deci pe serverul dumneavoastră, fără nicio licență de cumpărat.

Cerințele BookStack

ElementVersiunea cerutăPrecizare
PHP8.2 sau mai recentExtensiile curl, dom, gd, iconv, mbstring, mysqlnd, openssl, pdo, pdo_mysql, tokenizer, xml și zip
Baza de dateMySQL 8.0 sau mai recent, MariaDB 10.6 sau mai recentO singură bază, a cărei schemă o gestionează BookStack singur
Composer2.2 sau mai recentPentru dependențele PHP
GitFără versiune precizatăPentru a prelua codul și a aplica actualizările
Server webCompatibil PHPApache sau Nginx, rădăcina web pe directorul public

Docker rămâne facultativ. Proiectul nu publică o imagine oficială: instalările în container provin din proiecte comunitare, LinuxServer.io și solidnerd. Acest ghid urmează calea oficială, PHP și MySQL direct pe server, care nu cere nimic în plus.

Documentația exclude găzduirea PHP partajată: BookStack cere un server pe care îl administrați. Ea nu indică nici memoria, nici procesorul necesare. Pe un Managed VPS, descrieți-ne utilizarea, numărul de persoane și volumul de imagini și de atașamente și vă recomandăm dimensiunea potrivită.

Instalarea BookStack

Proiectul propune două căi: un script pentru Ubuntu, cel mai scurt pe un server nou, și o instalare manuală pentru toate celelalte cazuri.

Cu scriptul proiectului, pe un Ubuntu proaspăt instalat

SistemCe instalează scriptul
Ubuntu 26.04Apache, MySQL 8.4 și PHP 8.5
Ubuntu 24.04Apache, MySQL 8.0 și PHP 8.3
Ubuntu 22.04Apache, MySQL 8.0 și PHP 8.4
Terminal, pentru 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

Aceste scripturi sunt rezervate unui sistem proaspăt instalat: ele pot suprascrie o configurație web existentă. Ele lasă deoparte și două subiecte, setările de e-mail și securitatea sistemului, de prevăzut separat.

Scriptul pune BookStack în /var/www/bookstack. Cel pentru Ubuntu 26.04 cere domeniul și adresa contului de administrator, apoi afișează la sfârșit o parolă generată aleatoriu, absentă din jurnalul său: notați-o. Cu un alt script, preluați accesele afișate la sfârșit și schimbați orice acces implicit de la prima conectare.

Manual, pe orice altă mașină

Începeți cu baza de date: o bază și un utilizator limitat la această bază. Scriptul proiectului procedează așa, cu parola aleasă de dumneavoastră în locul lui change-me:

Terminal
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;"

Preluați apoi ramura release, setați drepturile pe care documentația le dă pentru /var/www/bookstack, apoi instalați dependențele:

Terminal
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

Completați baza și adresa în .env:

.env
APP_URL=https://docs.example.com
DB_HOST=localhost
DB_DATABASE=bookstack
DB_USERNAME=bookstack
DB_PASSWORD=change-me
Terminal, în /var/www/bookstack
php artisan key:generate
php artisan migrate

Indicați în sfârșit rădăcina web spre directorul public: DocumentRoot pe Apache, root pe Nginx. Fără Apache sau când fișierele .htaccess sunt dezactivate, adăugați regulile de rescriere a adreselor: proiectul publică exemple pentru Apache și pentru Nginx.

O instalare manuală se deschide cu contul admin@admin.com și parola password. Schimbați adresa și parola de la prima conectare.

HTTPS și APP_URL

Vizitatorii ajung pe porturile 80 și 443, sub numele de domeniu al serverului. Creați pentru acest nume înregistrări A și AAAA, apoi cereți certificatul: scriptul pentru Ubuntu 26.04 configurează Apache doar pe portul 80, iar pagina de instalare lasă HTTPS în seama dumneavoastră. Certbot instalează certificatul Let’s Encrypt, adaptează Apache și reînnoiește singur certificatul. Sub Nginx, înlocuiți --apache cu --nginx.

Terminal
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/local/bin/certbot
sudo certbot --apache -d docs.example.com

Treceți apoi adresa în HTTPS în .env. APP_URL trebuie să corespundă exact adresei de vizitare, prefix inclus: o diferență se vede prin stiluri lipsă, pictograme disproporționate și meniuri stricate. O adresă în https activează singură cookie-urile securizate.

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

Dacă există deja pagini, linkurile lor păstrează vechea adresă în bază. Salvați baza, apoi rulați comanda proiectului:

Terminal, în /var/www/bookstack
php artisan bookstack:update-url http://docs.example.com https://docs.example.com

BookStack se servește la rădăcina unui domeniu sau a unui subdomeniu, iar documentația descrie și o instalare sub un subdirector, precum example.com/bookstack. Dacă un proxy invers se adaugă în fața Apache, declarați adresa lui în APP_PROXIES: fără ea, jurnalul de audit și limitarea ratei văd adresa proxy-ului în locul celei a vizitatorilor. Documentația rezervă APP_PROXIES="*" diagnosticului.

Unde trăiesc datele dumneavoastră

LocațiaCe conține
Baza MySQL sau MariaDBToate datele aplicației, printre care conținutul paginilor dumneavoastră
.envConfigurația, cu APP_KEY și accesele la bază și la serverul de e-mail
public/uploadsImaginile, cu stocarea implicită
storage/uploadsAtașamentele, protejate de permisiunile BookStack
themesPersonalizările dumneavoastră de temă, dacă este cazul

Păstrați aceeași APP_KEY în timp și salvați-o. BookStack o folosește pentru a cripta, printre altele, secretele de autentificare în doi pași: schimbarea ei poate strica aceste funcții, iar începând cu versiunea 26.09 aplicația returnează o eroare dacă lipsește.

Imaginile sunt publice implicit

Cu stocarea implicită, serverul web servește direct imaginile, ceea ce merge repede, iar orice persoană care le cunoaște adresa le poate deschide. Pentru o documentație internă, alegerea se face în STORAGE_TYPE:

<code>STORAGE_TYPE</code>ImaginiAcces
localpublic/uploads/imagesServite direct de serverul web
local_securestorage/uploads/imagesRezervate persoanelor conectate, în afară de cazul în care accesul public este activat
local_secure_restrictedstorage/uploads/imagesDupă permisiunile paginii, opțiunea cea mai costisitoare
s3Un bucket compatibil S3Imagini făcute publice la trimitere

Pentru fișierele mari, trei setări trebuie să se potrivească: FILE_UPLOAD_SIZE_LIMIT în .env, post_max_size și upload_max_filesize în php.ini și client_max_body_size sub Nginx, care are implicit 1 MB.

Două setări contează și pentru o documentație vie: fiecare pagină păstrează implicit 100 de revizii (REVISION_LIMIT), iar coșul de gunoi păstrează elementele șterse 30 de zile (RECYCLE_BIN_LIFETIME).

E-mailurile: SMTP și coada de așteptare

BookStack trimite e-mailuri pentru confirmarea adreselor, parola uitată, invitații și notificări. De pe un VPS Simafri, trimiterea trece printr-un releu SMTP autentificat, pe portul 587: adresa unui cont de e-mail pe care îl aveți deja sau 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

Verificați rezultatul în „Settings”, „Maintenance”, cu acțiunea „Send a Test Email”, care afișează erorile întâlnite. Un eșec la o invitație se afișează pe ecran, în timp ce un eșec de notificare rămâne în jurnalul aplicației.

Trimiterea în fundal

Implicit, BookStack trimite e-mailurile și webhookurile în timpul cererii, ceea ce poate încetini paginile. Pentru a trece în fundal, scrieți QUEUE_CONNECTION=database în .env și rulați un serviciu, cu exemplul pe care documentația îl dă pentru o instalare Ubuntu prin script:

/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
Terminal
sudo systemctl daemon-reload
sudo systemctl enable bookstack-queue.service
sudo systemctl start bookstack-queue.service

Securizarea instanței BookStack

Documentația de securitate dă o listă de reluat încă de la instalare:

  1. Schimbați adresa și parola primului administrator.
  2. Verificați că serverul web servește doar directorul public, mai ales dacă BookStack se află sub /var/www.
  3. Limitați utilizatorul bazei la baza BookStack.
  4. Completați APP_URL, pentru ca adresele generate de sistem să nu poată fi manipulate.
  5. Recitiți setările de înregistrare și de acces public, apoi rolurile.

Autentificarea în doi pași se impune apoi pe rol. Abonați-vă și la lista de difuzare de securitate a proiectului, pentru a-i primi alertele. Adresa /status servește unei monitorizări: ea răspunde 200 când totul merge bine și un cod de eroare egal sau mai mare de 400 în caz contrar.

PHP contează la fel de mult ca BookStack. Proiectul a publicat pe 21 octombrie 2026 o alertă privind o actualizare critică a PHP, corectată în 8.5.12, 8.4.27, 8.3.36 și 8.2.35. Ubuntu publică aceste corecturi sub propriile numere de pachete, precum 8.3.6-0ubuntu0.24.04.13 pentru Ubuntu 24.04.

Pentru conținutul dumneavoastră, păstrați activată filtrarea implicită și rezervați relaxarea ei instanțelor în care scriu doar persoane de încredere. Dacă un cont de administrator se pierde, php artisan bookstack:create-admin creează altul, iar php artisan bookstack:reset-mfa elimină autentificarea în doi pași a unui utilizator.

Backupuri și actualizări

Un backup complet reunește baza și cele patru locații de fișiere proprii instanței dumneavoastră. Exporturile de conținut servesc altui scop: documentația precizează că ele nu înlocuiesc un backup.

Terminal, în /var/www/bookstack
sudo mysqldump -u root bookstack > bookstack.backup.sql
tar -czvf bookstack-files-backup.tar.gz .env public/uploads storage/uploads themes

Prima linie vizează o instalare prin script, unde root MySQL se conectează prin sudo; în alte părți, scrieți mysqldump -u bookstack -p bookstack. Puneți aceste două fișiere deoparte, de preferat pe altă mașină. Arhiva conține .env, deci APP_KEY și parolele dumneavoastră: tratați-o ca pe un secret.

Restaurarea

Pe o mașină nouă, instalați BookStack fără a rula php artisan migrate, o etapă de comentat în script dacă îl folosiți, apoi restaurați baza și fișierele, păstrând APP_KEY de origine:

Terminal, în /var/www/bookstack
sudo mysql -u root bookstack < bookstack.backup.sql
tar -xvzf bookstack-files-backup.tar.gz

Dacă versiunea instalată este mai recentă decât backupul, rulați apoi php artisan migrate. Puneți la loc drepturile de scriere ale serverului web pe directoarele restaurate. Dacă adresa s-a schimbat, corectați APP_URL și rulați bookstack:update-url.

Actualizarea

Salvați baza și fișierele înaintea fiecărei actualizări, apoi, din directorul BookStack:

Terminal, în /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

Scriptul pentru Ubuntu 26.04 instalează BookStack fără Composer. Pagina actualizărilor propune atunci, în beta, ./bookstack-system-cli download-vendor în locul lui composer install --no-dev. Același instrument știe să salveze și să restaureze, dar proiectul nu îl consideră încă pregătit pentru producție: testați-l înainte de a vă baza pe el.

Documentația ține o listă de indicații proprii fiecărei versiuni, de citit pentru versiunea vizată. Câteva exemple:

Breșele se corectează în versiuni de mentenanță, precum 26.09.3 din 11 noiembrie 2026: imaginile și desenele unei pagini în ciornă sau în coșul de gunoi rămâneau accesibile și modificabile, iar ciorna personală a unui editor putea deveni vizibilă pentru alte persoane.

Cine ce face pe un Managed VPS

Găzduirea pe propriul server cere să țineți serverul pe lângă aplicație. Pe un Managed VPS, echipele noastre preiau serverul și vă urmăresc proactiv instanța; BookStack rămâne software-ul dumneavoastră, cu setările și datele sale.

SubiectEchipele noastreDumneavoastră
ServerulActualizări de sistem și de securitate, intervenții pe server incluseMomentul potrivit activității dumneavoastră
MonitorizareaServer urmărit 24 de ore din 24, 7 zile din 7, cu intervenție fără a vă aștepta apelulUtilizatorii dumneavoastră, rolurile lor și conținutul
BookStackUrmărire proactivă: erori, încetiniri și spațiu pe disc depistate, corectură recomandatăInstalarea, actualizările și setările sale, pe care le aplicați dumneavoastră sau asistentul dumneavoastră AI
BackupurileÎn fiecare noapte, criptate și păstrate în afara mașinii; restaurare inclusăCererea de restaurare, când aveți nevoie de ea
MigrareaServerul dumneavoastră actual migrat, gratuitMomentul trecerii

Dacă preferați ca echipele noastre să intervină în aplicația însăși, această prestație se facturează la oră sau la preț fix, cu o ofertă comunicată înainte de intervenție.

BookStack, pe un server întreținut pentru dumneavoastră

Cu un Managed VPS Simafri, echipele noastre țin la zi serverul instanței dumneavoastră BookStack, îl monitorizează zi și noapte și intervin fără a vă aștepta apelul; ele vă urmăresc proactiv și instanța și vă recomandă corecturile utile, pe care le aplicați dumneavoastră sau asistentul dumneavoastră AI. Backupurile sunt criptate în fiecare noapte și păstrate în afara mașinii, restaurarea lor este inclusă, iar migrarea serverului actual este gratuită.

Descoperiți gama Managed VPS

Întrebări frecvente

Este BookStack gratuit pentru o firmă?

Da. BookStack este sub licență MIT, care permite orice utilizare, iar proiectul ține o singură versiune, fără ediție enterprise. El propune și formule de suport plătite, care rămân facultative. Rămâne costul serverului pe care rulează.

Cum instalez BookStack pe Ubuntu?

Pe un Ubuntu 26.04, 24.04 sau 22.04 proaspăt instalat, descărcați scriptul de instalare al proiectului, faceți-l executabil și rulați-l cu sudo. El instalează Apache, MySQL și PHP. Pe o mașină deja în funcțiune, urmați instalarea manuală, căci scriptul poate suprascrie o configurație web existentă.

Există o imagine Docker oficială pentru BookStack?

Nu. Instalările în container provin din proiecte comunitare, LinuxServer.io și solidnerd. Calea oficială instalează BookStack direct pe server, cu PHP, MySQL sau MariaDB și un server web, manual sau prin scriptul pentru Ubuntu.

Ce configurație trebuie pentru a găzdui BookStack?

PHP 8.2 sau mai recent, MySQL 8.0 sau MariaDB 10.6 sau mai recent, Composer 2.2 sau mai recent, Git și un server web compatibil PHP. Proiectul nu indică nici memoria, nici procesorul și exclude găzduirea PHP partajată.

Care este parola implicită BookStack?

O instalare manuală se deschide cu admin@admin.com și parola password, de schimbat de la prima conectare. Scriptul pentru Ubuntu 26.04 afișează la sfârșit o parolă generată aleatoriu. În caz de pierdere a accesului, php artisan bookstack:create-admin creează un nou administrator.

Cum fac backup la BookStack?

Exportați baza cu mysqldump și arhivați .env, public/uploads, storage/uploads și themes. Păstrați APP_KEY de origine la o restaurare și puneți totul în afara mașinii. Exporturile de conținut ale BookStack nu înlocuiesc acest backup.

Cum configurez e-mailurile BookStack?

Completați MAIL_DRIVER, MAIL_HOST, MAIL_PORT, MAIL_ENCRYPTION, MAIL_USERNAME, MAIL_PASSWORD, MAIL_FROM și MAIL_FROM_NAME în fișierul .env, apoi rulați Send a Test Email în Settings, Maintenance. De pe un VPS Simafri, trimiterea trece printr-un releu SMTP autentificat, pe portul 587.

Acoperă un Managed VPS și BookStack?

Un Managed VPS acoperă serverul: sistemul, securitatea, monitorizarea și backupurile. Echipele noastre vă urmăresc proactiv și instanța și vă recomandă corecturile utile, pe care le aplicați dumneavoastră. O intervenție în aplicație se facturează la oră sau la preț fix.

Surse și documentație oficială

Contactați-ne