Hoste BookStack på en Managed VPS: din dokumentation hos dig selv

At hoste BookStack på en Managed VPS betyder at opbevare din dokumentation på en maskine, der er din egen, og som vores teams holder opdateret og overvåger dag og nat. BookStack er fri software under MIT-licensen, enkel at køre: PHP, MySQL eller MariaDB og en webserver, uden Docker. Denne guide følger den officielle dokumentation: installationen, HTTPS, dataene, e-mails, sikkerheden, backup og opdateringer.

Simon Vasconcelos Lee Af Udgivet den 13. november 2026Læsetid: 11 minutter

Alle guider

Det vigtigste

  1. MIT-licensen til BookStack tillader enhver brug i virksomheder, og projektet fører kun én version, fri, uden en enterprise-udgave.
  2. BookStack klarer sig uden Docker: den kræver PHP 8.2 eller nyere, MySQL 8.0 eller MariaDB 10.6 eller nyere og en webserver, der serverer dens mappe public.
  3. Installér den med projektets script på en splinterny Ubuntu, eller manuelt med Git og Composer på en maskine, der allerede er i drift.
  4. Server den via HTTPS med Certbot, og skriv derefter den præcise adresse i APP_URL: links og sikre cookies afhænger af den.
  5. Tag backup af databasen, .env, public/uploads, storage/uploads og themes, og pas godt på APP_KEY.

Hvad BookStack gør

BookStack er en dokumentationsplatform, der er tænkt til at forblive enkel: dens README sigter mod en øjeblikkelig ibrugtagning med blot nogle få begreber fra tekstbehandling. Dine teams skriver deres procedurer, deres dokumentation og deres vidensbase der, i en browser, på dansk, hvis de ønsker det.

Projektet står ved sine valg: dets README præciserer, at BookStack ikke er udformet som en platform, der kan udvides til andre formål, og det forbliver forpligtet på dokumentationen. Dets PDF-rendering går gennem dompdf, uden yderligere installation, med begrænsede muligheder; projektet dokumenterer andre motorer med EXPORT_PDF_COMMAND.

Hvad MIT-licensen tillader

BookStack udgives under MIT-licensen af Dan Brown og projektets bidragydere. Den tillader enhver brug, enhver ændring og enhver distribution på én betingelse: at bevare copyright-meddelelsen og licensteksten i enhver kopi af softwaren. Projektets FAQ præciserer, at denne kreditering gælder den kode, du deler: intet forpligter dig til at vise BookStacks navn eller logo på din instans.

Projektet fører kun én version, fri og gratis: det tilbyder ikke en enterprise-udgave, og det har ingen officiel hosting eller planer om at åbne en. Det sælger til gengæld supportabonnementer, som sammen med donationer og sponsorater er med til at finansiere det. BookStack installeres altså på din server, uden at du skal købe en licens.

Kravene til BookStack

ElementKrævet versionNærmere oplysninger
PHP8.2 eller nyereUdvidelserne curl, dom, gd, iconv, mbstring, mysqlnd, openssl, pdo, pdo_mysql, tokenizer, xml og zip
DatabaseMySQL 8.0 eller nyere, MariaDB 10.6 eller nyereÉn enkelt database, hvis skema BookStack selv administrerer
Composer2.2 eller nyereTil PHP-afhængighederne
GitIngen version angivetTil at hente koden og anvende opdateringerne
WebserverPHP-kompatibelApache eller Nginx, webroden på mappen public

Docker er fortsat valgfrit. Projektet udgiver ikke et officielt image: installationerne i containere kommer fra fællesskabsprojekter, LinuxServer.io og solidnerd. Denne guide følger den officielle vej, PHP og MySQL direkte på serveren, som ikke kræver mere.

Dokumentationen fraråder delt PHP-hosting: BookStack kræver en server, du selv administrerer. Den opgiver hverken den nødvendige hukommelse eller processor. På en Managed VPS beskriver du blot din brug, antallet af personer og mængden af billeder og vedhæftede filer for os, og vi anbefaler den størrelse, der passer.

Installation af BookStack

Projektet tilbyder to veje: et script til Ubuntu, det korteste på en ny server, og en manuel installation i alle andre tilfælde.

Med projektets script, på en splinterny Ubuntu

SystemHvad scriptet installerer
Ubuntu 26.04Apache, MySQL 8.4 og PHP 8.5
Ubuntu 24.04Apache, MySQL 8.0 og PHP 8.3
Ubuntu 22.04Apache, MySQL 8.0 og PHP 8.4
Terminal, til 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

Disse scripts er forbeholdt et nyinstalleret system: de kan overskrive en eksisterende webkonfiguration. De lader også to emner ligge, e-mailindstillingerne og systemets sikkerhed, som skal tages op for sig.

Scriptet lægger BookStack i /var/www/bookstack. Scriptet til Ubuntu 26.04 spørger efter domænet og administratorkontoens adresse og viser til sidst en tilfældigt trukket adgangskode, som ikke står i dets log: skriv den ned. Med et andet script skal du notere de adgange, der vises til sidst, og ændre enhver standardadgang ved første login.

Manuelt, på enhver anden maskine

Begynd med databasen: en database og en bruger, der er begrænset til denne database. Projektets script gør det sådan, med den adgangskode, du selv vælger i stedet for 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;"

Hent derefter grenen release, sæt de rettigheder, som dokumentationen angiver for /var/www/bookstack, og installér derefter afhængighederne:

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

Angiv databasen og adressen i .env:

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

Peg til sidst webroden på mappen public: DocumentRoot på Apache, root på Nginx. Uden Apache, eller når filerne .htaccess er deaktiveret, tilføjer du reglerne for omskrivning af adresser: projektet udgiver eksempler til Apache og til Nginx.

En manuel installation åbnes med kontoen admin@admin.com og adgangskoden password. Ændr adressen og adgangskoden ved første login.

HTTPS og APP_URL

De besøgende kommer ind på port 80 og 443, under serverens domænenavn. Opret A- og AAAA-records for dette navn, og bed derefter om certifikatet: scriptet til Ubuntu 26.04 konfigurerer kun Apache på port 80, og installationssiden overlader HTTPS til dig. Certbot installerer certifikatet fra Let's Encrypt, tilpasser Apache og fornyer certifikatet af sig selv. Under Nginx erstatter du --apache med --nginx.

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

Skift derefter adressen til HTTPS i .env. APP_URL skal svare præcist til den adresse, der besøges, præfiks inklusive: en afvigelse viser sig ved manglende stilarter, overdimensionerede ikoner og ødelagte menuer. En adresse i https slår af sig selv de sikre cookies til.

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

Hvis der allerede findes sider, beholder deres links den gamle adresse i databasen. Tag backup af databasen, og kør derefter projektets kommando:

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

BookStack serveres i roden af et domæne eller subdomæne, og dokumentationen beskriver også en installation under en undermappe, som example.com/bookstack. Hvis en reverse proxy sættes foran Apache, skal du angive dens adresse i APP_PROXIES: uden den ser revisionsloggen og begrænsningen af forespørgselshastighed proxyens adresse i stedet for de besøgendes. Dokumentationen forbeholder APP_PROXIES="*" til fejlfinding.

Hvor dine data ligger

PlaceringHvad den rummer
MySQL- eller MariaDB-databasenAlle applikationens data, herunder indholdet af dine sider
.envKonfigurationen, med APP_KEY og adgangene til databasen og e-mailserveren
public/uploadsBillederne, med standardlagringen
storage/uploadsDe vedhæftede filer, beskyttet af BookStacks tilladelser
themesDine tilpasninger af temaet, hvis der er nogen

Behold den samme APP_KEY over tid, og tag backup af den. BookStack bruger den blandt andet til at kryptere hemmelighederne til tofaktorgodkendelse: at ændre den kan ødelægge disse funktioner, og siden version 26.09 returnerer applikationen en fejl, hvis den mangler.

Billederne er offentlige som standard

Med standardlagringen serverer webserveren billederne direkte, hvilket går hurtigt, og enhver, der kender deres adresse, kan åbne dem. Til en intern dokumentation træffes valget i STORAGE_TYPE:

<code>STORAGE_TYPE</code>BillederAdgang
localpublic/uploads/imagesServeres direkte af webserveren
local_securestorage/uploads/imagesForbeholdt loggede brugere, medmindre offentlig adgang er slået til
local_secure_restrictedstorage/uploads/imagesEfter sidens tilladelser, den mest ressourcekrævende mulighed
s3En S3-kompatibel bucketBilleder gøres offentlige ved upload

Til tunge filer skal tre indstillinger passe sammen: FILE_UPLOAD_SIZE_LIMIT i .env, post_max_size og upload_max_filesize i php.ini og client_max_body_size under Nginx, som er 1 MB som standard.

To indstillinger tæller også for en levende dokumentation: hver side beholder 100 revisioner som standard (REVISION_LIMIT), og papirkurven gemmer de slettede elementer i 30 dage (RECYCLE_BIN_LIFETIME).

E-mails: SMTP og kø

BookStack sender e-mails til bekræftelse af adresser, glemt adgangskode, invitationer og notifikationer. Fra en Simafri VPS går afsendelsen gennem et autentificeret SMTP-relay på port 587: adressen på en mailkonto, du allerede har, eller 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

Kontrollér resultatet under «Settings», «Maintenance», med handlingen «Send a Test Email», som viser de fejl, der opstår. En fejl ved en invitation vises på skærmen, mens en fejl ved en notifikation bliver i applikationens log.

Send i baggrunden

Som standard sender BookStack e-mails og webhooks under selve forespørgslen, hvilket kan gøre siderne langsommere. For at gå over til baggrunden skriver du QUEUE_CONNECTION=database i .env og kører en tjeneste, med det eksempel som dokumentationen giver for en Ubuntu-installation via 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

Sikr din BookStack-instans

Sikkerhedsdokumentationen giver en liste, der skal følges fra installationen:

  1. Ændr adressen og adgangskoden til den første administrator.
  2. Kontrollér, at webserveren kun serverer mappen public, især hvis BookStack ligger under /var/www.
  3. Begræns databasebrugeren til BookStacks database alene.
  4. Angiv APP_URL, så de adresser, systemet genererer, ikke kan manipuleres.
  5. Gennemgå indstillingerne for tilmelding og offentlig adgang og derefter rollerne.

Tofaktorgodkendelsen gøres derefter obligatorisk pr. rolle. Tilmeld dig også projektets sikkerhedsmailingliste for at modtage dets alarmer. Adressen /status bruges til overvågning: den svarer 200, når alt er i orden, og ellers en fejlkode på 400 eller derover.

PHP tæller lige så meget som BookStack. Projektet udgav den 21. oktober 2026 en alarm om en kritisk PHP-opdatering, rettet i 8.5.12, 8.4.27, 8.3.36 og 8.2.35. Ubuntu udgiver disse rettelser under sine egne pakkenumre, som 8.3.6-0ubuntu0.24.04.13 for Ubuntu 24.04.

Til dit indhold bør du lade filtreringen, der er slået til som standard, være, og kun lempe den på instanser, hvor kun betroede personer skriver. Hvis en administratorkonto går tabt, opretter php artisan bookstack:create-admin en anden, og php artisan bookstack:reset-mfa fjerner en brugers tofaktorgodkendelse.

Backup og opdateringer

En komplet backup samler databasen og de fire filplaceringer, der er særlige for din instans. Indholdseksporterne bruges til noget andet: dokumentationen præciserer, at de ikke erstatter en backup.

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

Den første linje sigter mod en installation via script, hvor MySQL's root forbinder via sudo; andre steder skriver du mysqldump -u bookstack -p bookstack. Læg disse to filer for sig, helst på en anden maskine. Arkivet indeholder .env, altså APP_KEY og dine adgangskoder: behandl det som en hemmelighed.

Gendan

På en ny maskine installerer du BookStack uden at køre php artisan migrate, et trin der skal kommenteres ud i scriptet, hvis du bruger det, og gendanner derefter databasen og filerne, med den oprindelige APP_KEY bevaret:

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

Hvis den installerede version er nyere end backuppen, kører du derefter php artisan migrate. Sæt webserverens skriverettigheder på de gendannede mapper igen. Hvis adressen er ændret, skal du rette APP_URL og køre bookstack:update-url.

Opdatér

Tag backup af databasen og filerne før hver opdatering, og kør derefter, fra BookStacks mappe:

Terminal, i /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

Scriptet til Ubuntu 26.04 installerer BookStack uden Composer. Opdateringssiden foreslår så, i beta, ./bookstack-system-cli download-vendor i stedet for composer install --no-dev. Det samme værktøj kan tage backup og gendanne, men projektet betragter det endnu ikke som klar til produktion: test det, før du stoler på det.

Dokumentationen fører en liste over anvisninger, der er særlige for hver version, som skal læses for den version, du sigter mod. Nogle eksempler:

Sårbarhederne rettes i vedligeholdelsesversioner, som 26.09.3 fra den 11. november 2026: billeder og tegninger på en side, der var en kladde eller lå i papirkurven, forblev tilgængelige og kunne ændres, og en redaktørs personlige kladde kunne blive synlig for andre personer.

Hvem gør hvad på en Managed VPS

Selvhosting kræver, at du holder serveren ud over selve applikationen. På en Managed VPS tager vores teams sig af serveren og følger din instans proaktivt; BookStack forbliver din software, med dens indstillinger og data.

EmneVores teamsDig
ServerenOpdateringer af system og sikkerhed, indgreb på serveren inkluderetDet tidspunkt, der passer til din drift
OvervågningenServeren følges døgnet rundt, alle ugens dage, med indgreb uden at vente på dit opkaldDine brugere, deres roller og dit indhold
BookStackProaktiv opfølgning: fejl, langsomme svartider og diskplads opdages, og en rettelse anbefalesInstallation, opdateringer og indstillinger, som du gennemfører, selv eller med din AI-assistent
BackupHver nat, krypteret og opbevaret uden for maskinen; gendannelse inkluderetAnmodningen om gendannelse, når du får brug for den
MigreringenDin nuværende server flyttes, uden beregningTidspunktet for omlægningen

Hvis du foretrækker, at vores teams griber ind i selve applikationen, faktureres den ydelse pr. time eller som fast pris, med et overslag oplyst før indgrebet.

BookStack på en server, der passes for dig

Med en Managed VPS fra Simafri holder vores teams serveren bag din BookStack-instans opdateret, overvåger den dag og nat og griber ind uden at vente på dit opkald; de følger også din instans proaktivt og anbefaler dig de nyttige rettelser, som du gennemfører, selv eller med din AI-assistent. Backup krypteres hver nat og opbevares uden for maskinen, gendannelsen er inkluderet, og migreringen af din nuværende server sker uden beregning.

Opdag Managed VPS

Ofte stillede spørgsmål

Er BookStack gratis for en virksomhed?

Ja. BookStack er under MIT-licensen, som tillader enhver brug, og projektet fører kun én version, uden en enterprise-udgave. Det tilbyder også betalte supportabonnementer, som er valgfrie. Tilbage er udgiften til den server, der kører det.

Hvordan installerer man BookStack på Ubuntu?

På en splinterny Ubuntu 26.04, 24.04 eller 22.04 henter du projektets installationsscript, gør det eksekverbart og kører det med sudo. Det installerer Apache, MySQL og PHP. På en maskine, der allerede er i drift, følger du den manuelle installation, for scriptet kan overskrive en eksisterende webkonfiguration.

Findes der et officielt Docker-image til BookStack?

Nej. Installationerne i containere kommer fra fællesskabsprojekter, LinuxServer.io og solidnerd. Den officielle vej installerer BookStack direkte på serveren, med PHP, MySQL eller MariaDB og en webserver, manuelt eller via scriptet til Ubuntu.

Hvilken konfiguration skal der til for at hoste BookStack?

PHP 8.2 eller nyere, MySQL 8.0 eller MariaDB 10.6 eller nyere, Composer 2.2 eller nyere, Git og en PHP-kompatibel webserver. Projektet opgiver hverken hukommelse eller processor og fraråder delt PHP-hosting.

Hvad er BookStacks standardadgangskode?

En manuel installation åbnes med admin@admin.com og adgangskoden password, som skal ændres ved første login. Scriptet til Ubuntu 26.04 viser til sidst en tilfældigt trukket adgangskode. Hvis du mister adgangen, opretter php artisan bookstack:create-admin en ny administrator.

Hvordan tager man backup af BookStack?

Eksportér databasen med mysqldump, og arkivér .env, public/uploads, storage/uploads og themes. Behold den oprindelige APP_KEY ved en gendannelse, og læg det hele uden for maskinen. BookStacks indholdseksporter erstatter ikke denne backup.

Hvordan konfigurerer man BookStacks e-mails?

Angiv MAIL_DRIVER, MAIL_HOST, MAIL_PORT, MAIL_ENCRYPTION, MAIL_USERNAME, MAIL_PASSWORD, MAIL_FROM og MAIL_FROM_NAME i filen .env, og kør derefter Send a Test Email under Settings, Maintenance. Fra en Simafri VPS går afsendelsen gennem et autentificeret SMTP-relay på port 587.

Dækker en Managed VPS BookStack?

En Managed VPS dækker serveren: system, sikkerhed, overvågning og backup. Vores teams følger også din instans proaktivt og anbefaler dig de nyttige rettelser, som du gennemfører. Et indgreb i selve applikationen faktureres pr. time eller som fast pris.

Kilder og officiel dokumentation

Kontakt os