---
title: "Faça o deploy de BookStack no Pethost com um clique"
description: "Uma wiki organizada em estantes, livros, capítulos e páginas. Um template para o Pethost: em um ou dois minutos o app está no ar na sua máquina, com HTTPS no próprio endereço e backups noturnos."
---

[← Todos os templates](https://pethost.dev/pt/templates/)

# Faça o deploy de BookStack no Pethost com um clique

Uma wiki organizada em estantes, livros, capítulos e páginas

[Fazer deploy no Pethost](https://console.pethost.dev/?template=bookstack)

## O que acontece

1. Você entra no Pethost ou cria uma conta, com uma passkey, GitHub ou Google.
2. Ainda não tem máquina? Você escolhe um plano, e nós preparamos uma para você. O link espera no seu navegador até ela ficar pronta.
3. Novo projeto abre no app. Você preenche o que ele pede e clica em Criar projeto: **E-mail**, **Senha do administrador**.
4. Em um ou dois minutos o app está no ar no próprio endereço com HTTPS. Os segredos dele são gerados ao acaso, e os dados vão para o backup noturno.
5. É um projeto como qualquer outro: o compose.yaml, o .env, os logs e um terminal ficam no painel, e seu agente pode alterá-lo, fazer rollback ou restaurá-lo.

## Primeiros passos

Entre com o e-mail e a senha de administrador que você informou, de pelo menos 8 caracteres: o template os dá ao primeiro administrador do BookStack, então a conta padrão admin@admin.com nunca entra. Uploads e configurações ficam guardados em /config.

## O que roda

O template é este compose.yaml e as variáveis que ele grava no .env do projeto. O Pethost roda o arquivo exatamente como está escrito.

```
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 admin@admin.com 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:
```

[compose.yaml](https://pethost.dev/templates/bookstack/compose.yaml)[Ver no GitHub](https://github.com/pethost-dev/templates/tree/main/bookstack)

Pethost · Stephan Gomer · NIP 1133096755

[Templates](https://pethost.dev/pt/templates/) [Sobre nós](https://pethost.dev/about/) [Blog](https://pethost.dev/blog/) [Termos](https://pethost.dev/terms/) [Privacidade](https://pethost.dev/privacy/) [Reembolsos](https://pethost.dev/refunds/) [API](https://pethost.dev/docs/api/) [CLI](https://pethost.dev/docs/cli/) [Plugin](https://github.com/pethost-dev/plugin) [support@pethost.dev](mailto:support@pethost.dev)
