Português
Começar
← Todos os templates

Faça o deploy de Karakeep no Pethost com um clique

Um app de favoritos para links, notas e imagens, com busca em texto completo

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, e você clica em Criar projeto.
  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

Abra o endereço e cadastre-se: a primeira conta é a do administrador. Faça isso logo: até lá, a página fica aberta para quem tiver o endereço. Depois adicione DISABLE_SIGNUPS=true ao .env do projeto e faça o deploy de novo. A criação de tags por IA funciona quando OPENAI_API_KEY também está no .env.

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:
  web:
    image: ghcr.io/karakeep-app/karakeep:0.33.2
    restart: unless-stopped
    # Karakeep's other settings (DISABLE_SIGNUPS, OPENAI_API_KEY, ...) go into .env.
    env_file: .env
    environment:
      DATA_DIR: /data
      MEILI_ADDR: http://meilisearch:7700
      BROWSER_WEB_URL: http://chrome:9222
    volumes:
      - data:/data

  # The headless browser that fetches a bookmarked page, its text and its screenshot.
  chrome:
    image: ghcr.io/karakeep-app/karakeep-chrome:154.0.8037.57-r1
    restart: unless-stopped
    init: true
    command:
      - --disable-gpu
      - --disable-dev-shm-usage
      - --hide-scrollbars
      - --disable-blink-features=AutomationControlled
      - --window-size=1440,900

  # Full-text search. A minor line: a newer minor needs its data migrated.
  meilisearch:
    image: getmeili/meilisearch:v1.41
    restart: unless-stopped
    environment:
      MEILI_MASTER_KEY: ${MEILI_MASTER_KEY}
      MEILI_NO_ANALYTICS: "true"
    volumes:
      - meilisearch:/meili_data

volumes:
  data:
  meilisearch: