Русский
Начать
← Все шаблоны

Karakeep на Pethost в один клик

Приложение для закладок со ссылками, заметками и изображениями, с полнотекстовым поиском

Что произойдет

  1. Вы входите в Pethost или создаете аккаунт — с passkey, через GitHub или Google.
  2. Машины еще нет? Вы выбираете тариф, и мы готовим машину для вас. Ссылка ждет в вашем браузере, пока машина не будет готова.
  3. Окно «Новый проект» открывается на этом приложении, и вы нажимаете «Создать проект».
  4. Через минуту-две приложение работает по своему адресу с HTTPS. Его секреты создаются случайно, а данные попадают в ночной бэкап.
  5. Это проект как любой другой: его compose.yaml, .env, логи и терминал — в панели, а ваш агент может его изменить, откатить или восстановить.

Первые шаги

Откройте адрес и зарегистрируйтесь: первый аккаунт становится администратором. Сделайте это сразу: до тех пор страница открыта любому, кто знает адрес. Затем добавьте DISABLE_SIGNUPS=true в .env проекта и задеплойте проект заново. Расстановка тегов с помощью ИИ заработает, когда в .env будет и OPENAI_API_KEY.

Что запускается

Шаблон — это этот compose.yaml и переменные, которые он пишет в .env проекта. Pethost запускает файл так, как он написан.

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: