Déployez BookStack sur Pethost en un clic
Un wiki organisé en étagères, livres, chapitres et pages
Ce qui se passe
- Vous vous connectez à Pethost ou créez un compte, avec une clé d’accès, GitHub ou Google.
- Pas encore de machine ? Vous choisissez une offre, et nous en préparons une pour vous. Le lien attend dans votre navigateur qu’elle soit prête.
- Nouveau projet s’ouvre sur l’application. Vous remplissez ce qu’elle demande et cliquez sur Créer le projet : E-mail, Mot de passe administrateur.
- En une minute ou deux, l’application tourne à sa propre adresse en HTTPS. Ses secrets sont créés pour elle au hasard, et ses données sont dans la sauvegarde nocturne.
- C’est un projet comme les autres : son compose.yaml, son .env, ses logs et un terminal sont dans le panel, et votre agent peut le modifier, revenir à une version précédente ou le restaurer.
Premiers pas
Connectez-vous avec l’e-mail et le mot de passe administrateur indiqués, d’au moins 8 caractères : le modèle les donne au premier administrateur de BookStack, si bien que le compte par défaut [email protected] ne se connecte jamais. Les fichiers envoyés et les réglages sont conservés dans /config.
Ce qui tourne
Le template, c’est ce compose.yaml et les variables qu’il écrit dans le .env du projet. Pethost exécute le fichier tel qu’il est écrit.
services:
bookstack:
image: lscr.io/linuxserver/bookstack:v26.09.1-ls288
restart: unless-stopped
environment:
PUID: "1000"
PGID: "1000"
APP_URL: ${URL}
APP_KEY: ${APP_KEY}
DB_HOST: mariadb
DB_PORT: "3306"
DB_DATABASE: bookstack
DB_USERNAME: bookstack
DB_PASSWORD: ${DB_PASSWORD}
ADMIN_EMAIL: ${ADMIN_EMAIL}
ADMIN_PASSWORD: ${ADMIN_PASSWORD}
# BookStack's migrations make [email protected] with the password "password". A script of the
# image's custom-init step, which runs after the migrations and before the web server starts,
# gives that account the email and password given; once it is changed, the command leaves it.
entrypoint:
- sh
- -c
- |
mkdir -p /custom-cont-init.d
cat > /custom-cont-init.d/10-admin <<'SH'
#!/usr/bin/with-contenv sh
cd /app/www && php artisan bookstack:create-admin --initial --no-interaction --name=Admin --email="$$ADMIN_EMAIL" --password="$$ADMIN_PASSWORD"
SH
chmod 755 /custom-cont-init.d/10-admin
exec /init
depends_on:
mariadb:
condition: service_healthy
volumes:
- config:/config
mariadb:
image: lscr.io/linuxserver/mariadb:11.8.8-r0-ls235
restart: unless-stopped
environment:
PUID: "1000"
PGID: "1000"
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
MYSQL_DATABASE: bookstack
MYSQL_USER: bookstack
MYSQL_PASSWORD: ${DB_PASSWORD}
healthcheck:
test: ["CMD-SHELL", "mariadb-admin ping -h 127.0.0.1 -u bookstack -p\"$$MYSQL_PASSWORD\" --silent"]
interval: 5s
retries: 30
volumes:
- db:/config
volumes:
config:
db:
