1.3 KiB

Karakeep

An AI powered notes, bookmarks, everything knowledge base.

Setup

General

  1. (If not using checked in Dockerfile) Use the Dockerfile from Karakeep:
wget https://raw.githubusercontent.com/karakeep-app/karakeep/main/docker/docker-compose.yml
  1. This is what I changed from their base Dockerfile to get a runnable container when you checkout the repo:
  • Convert exposed ports to traefik labels for the main container.
  • Introduce Traefik network + create karakeep network for the containers to talk on.
  • Convert volumes to bind mounts on disk.
  • Convert to using env files instead of manually providing env vars. For some reason the dockerfile mixes use of explicit vars and .env file. Weird
  1. Create Env files Copy planka.env.example to planka.env, and planka-db.env.example to planka-db.env and fill with data, observing the following:
  • Update BASE_URL to point to vanity URL. Optionally generate a SECRET_KEY as well.
  • The POSTGRES_DB value in planka-db.env should match the database specified by DATABASE_URL in planka.env.
  1. Start just the db
docker compose up -d postgres
  1. Create Admin User
docker compose run --rm planka npm run db:create-admin-user
  1. Start the rest of Dockerfile
docker compose up -d