Nyaraka za timu kwa kawaida hufa kwa njia moja kati ya mbili: zikitawanyika kwenye mazungumzo ya gumzo ambayo hakuna anayeweza kuyatafuta, au zikizikwa ndani ya wiki ngumu kutumia kiasi kwamba hakuna anayeisasisha. BookStack ni ile wiki adimu unayojiwekea ambayo watu wanaitumia kweli. Maudhui yanakaa kwenye rafu, ndani ya vitabu, sura na kurasa — muundo ambao kila mtu anauelewa bila mafunzo. Na karibu haihitaji seva kabisa.
Kwa nini BookStack
- Muundo ulio wazi. Vitabu na sura badala ya rundo tambarare la kurasa.
- Uhariri usiomtisha mtu. Editor ya WYSIWYG kwa chaguo-msingi, Markdown kwa wanaoipendelea.
- Ruhusa halisi. Majukumu kwa kila rafu, kitabu au ukurasa — nyaraka za HR zinabaki mbali na wakandarasi.
- Kuingia kwa kampuni. LDAP, SAML2 na OpenID Connect zimejengwa ndani.
- Data yako. Kila kitu kiko kwenye database ya MariaDB na folda kwenye seva yako.
Si zana sahihi kwa kila kitu. Nyaraka za developers zinazopaswa kubadilika pamoja na code zinastahili kukaa kwenye repository, si kwenye wiki.
Inachohitaji
BookStack ni nyepesi. Kwa timu nyingi, Micro-IP — 1 vCPU, 2 GB, $10 kwa mwezi — inatosha kupita kiasi. IP maalum ndiyo inayowawezesha wenzako kuifikia kupitia HTTPS kwenye domain yako. Diski hukua kwa picha za skrini na PDF zilizopakiwa, si kwa idadi ya kurasa.
Kusakinisha kwa Docker Compose
Tutatumia image maarufu za LinuxServer.io. Kwanza tengeneza ufunguo wa programu:
docker run -it --rm --entrypoint /bin/bash lscr.io/linuxserver/bookstack:latest appkey
Nakili thamani ya base64:... inayochapishwa. Kisha unda docker-compose.yml:
services:
bookstack:
image: lscr.io/linuxserver/bookstack:latest
environment:
- PUID=1000
- PGID=1000
- APP_URL=https://wiki.example.com
- APP_KEY=base64:paste-your-key-here
- DB_HOST=db
- DB_PORT=3306
- DB_DATABASE=bookstack
- DB_USERNAME=bookstack
- DB_PASSWORD=change-me
volumes:
- ./bookstack:/config
ports:
- 127.0.0.1:6875:80
depends_on:
- db
restart: unless-stopped
db:
image: lscr.io/linuxserver/mariadb:latest
environment:
- PUID=1000
- PGID=1000
- MYSQL_ROOT_PASSWORD=change-me-too
- MYSQL_DATABASE=bookstack
- MYSQL_USER=bookstack
- MYSQL_PASSWORD=change-me
volumes:
- ./db:/config
restart: unless-stopped
docker compose up -d
docker compose logs -f bookstack
APP_URL lazima ilingane na anwani ambayo watu watatumia, pamoja na https://. Ukikosea, picha na viungo huharibika kwa njia za ajabu. Zaidi kuhusu Compose kwenye mwongozo wetu wa kupeleka stack.
HTTPS na kuingia kwa mara ya kwanza
Elekeza subdomain kwenye seva (jinsi), weka nginx mbele ya 127.0.0.1:6875, na uongeze cheti kwa certbot — mwongozo wa reverse proxy unakuongoza hatua kwa hatua.
Kisha ingia kwa akaunti ya chaguo-msingi: admin@admin.com / password. Badilisha barua pepe na nenosiri mara moja, kabla ya kushiriki kiungo. Wengine wote wanapata akaunti zao wenyewe au huingia kupitia mtoa huduma wenu wa utambulisho.
Backup
Vitu viwili vya kulinda: database na uploads zilizo ndani ya ./bookstack. Kazi ya usiku kama hii inashughulikia database:
docker compose exec -T db mysqldump -u bookstack -pchange-me bookstack > /var/backups/bookstack.sql
Kisha fanya backup ya /var/backups na folda ya compose nje ya seva — hicho ndicho hasa mwongozo wetu wa restic unachofanya. Managed Backups huongeza juu yake vituo vya kila siku vya kurejesha seva nzima.
Matunzo
Kusasisha ni docker compose pull && docker compose up -d. BookStack huendesha migrations za database inapowaka. Soma maelezo ya toleo kabla ya matoleo makuu; ni mafupi na yaliyo wazi.
Kama timu yako inataka pia mahali pa tiketi na code, seva ya Git unayojiwekea inakaa vizuri kando yake, kwenye aina ileile ya mpango.
Maoni
Bado hakuna maoni. Kuwa wa kwanza.