Quick Install
Follow these steps to install and start a self-hosted ZəkaHouse instance using the ZəkaHouse CLI.
You’ll need access to the ZəkaHouse repository, plus Docker (with Docker Compose v2), Node.js 18+, and Bun.
Step 1: Install the CLI
Build the CLI from a clone of the repository and put zeka-learnhouse on your PATH — see CLI → Installation for the full steps.
Don’t use npx learnhouse. That’s an unrelated package on the public npm registry that installs upstream LearnHouse, not ZəkaHouse.
Step 2: Build the App Image
The ZəkaHouse app image isn’t published to a container registry — you build it from the repository’s root Dockerfile. From the repository root:
docker build -t zeka-learnhouse:local .Step 3: Run the Setup Wizard
Point the wizard at the image you just built:
zeka-learnhouse setup --image zeka-learnhouse:localThe wizard will prompt you for:
- Domain configuration — your domain name or localhost for local development
- Database settings — PostgreSQL configuration (defaults are provided)
- Admin credentials — email and password for the initial admin account
- Optional features — AI features, email delivery, and more
The wizard generates docker-compose.yml, .env, learnhouse.config.json, and an nginx or Caddy configuration based on your choices. Sensible defaults are provided for most options — you can press Enter to accept them and adjust settings later.
When the wizard finishes, it starts all services for you — pulling the PostgreSQL, Redis, and reverse-proxy images on first run and using your locally built app image. This typically takes one to two minutes on first launch. (Pass --no-start to skip this; afterwards, use zeka-learnhouse start and zeka-learnhouse stop to manage the services.)
Step 4: Access ZəkaHouse
Once all services are running, access ZəkaHouse at your configured domain or:
- http://localhost (if using the default local configuration)
Log in with the admin credentials you provided during setup.
Change the default admin password after your first login. The initial credentials are intended only for the first setup. Navigate to your account settings to update your password.
Verifying the Installation
Run the built-in diagnostics to check that everything is working:
zeka-learnhouse doctorThis command checks Docker, container health, port availability, DNS resolution, and disk space, then reports any issues it finds.
You can also verify the health endpoint directly:
curl http://localhost/api/v1/healthNext Steps
- CLI Reference — Learn all available CLI commands.
- Configuration — Customize your instance with environment variables, AI, email, and more.