kaneo Docker & Self-Hosted Deployment

GitHub

All you need. Nothing you don't. Open source project management that works for you, not against you.

RAW Compose
1. Pull Image (GHCR) docker pull ghcr.io/usekaneo/kaneo
2. Docker Run (1-Click Launch) docker run -d --name kaneo -p 5173:5173 --restart always ghcr.io/usekaneo/kaneo:latest
3. Podman Run podman run -d --name kaneo -p 5173:5173 --restart always ghcr.io/usekaneo/kaneo:latest
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://ghcr.io/usekaneo/kaneo:latest
5. ORAS Pull (OCI Artifact) oras pull ghcr.io/usekaneo/kaneo:latest
6. Compose Deployment docker compose up -d
compose.yml
Download .yml
services:
  postgres:
    image: postgres:16-alpine
    env_file:
      - .env
    environment:
      POSTGRES_USER: ${POSTGRES_USER:-kaneo}
      POSTGRES_DB: ${POSTGRES_DB:-kaneo}
    volumes:
      - postgres_data:/var/lib/postgresql/data
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", 'pg_isready -U "$${POSTGRES_USER}" -d "$${POSTGRES_DB}"']
      interval: 10s
      timeout: 5s
      retries: 5

  kaneo:
    image: ghcr.io/usekaneo/kaneo:latest
    ports:
      - "5173:5173"
    env_file:
      - .env
    depends_on:
      postgres:
        condition: service_healthy
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "wget", "-Y", "off", "--no-verbose", "--tries=1", "--spider", "http://127.0.0.1:5173/api/health"]
      interval: 30s
      timeout: 5s
      start_period: 60s
      retries: 3

#  Optional for HA Setup
#  redis:
#    image: valkey/valkey
#    ports:
#      - "6379:6379"

volumes:
  postgres_data: