Mulai
Setup database
Jalankan Kanesh di SQLite, PostgreSQL, atau MySQL, lewat script install atau manual.
Setelah mengikuti panduan ini, kamu akan tahu database yang sesuai dan cara mengatur koneksinya di Kanesh. Koleksi disimpan sebagai tabel SQL sungguhan.
Sebelum mulai
- Untuk contoh Docker manual, build image lokal dengan mengikuti Memulai.
- Untuk PostgreSQL atau MySQL, siapkan alamat database dan kredensial untuk
DATABASE_URL. - Pilih salah satu cara setup di bawah: script install atau konfigurasi manual.
1. Pilih database
| Database | Dukungan | Cocok untuk |
|---|---|---|
| SQLite | Default, penuh | Satu mesin, tim kecil, demo |
| PostgreSQL | Penuh | Instalasi dengan PostgreSQL eksternal |
| MySQL | Penuh | Server MySQL yang sudah ada |
2. Atur database pilihanmu
Opsi A: script install
Script akan menanyakan database yang dipakai, atau menerima flag:
Note:
YOUR_KANESH_SITEadalah placeholder, bukan alamat unduhan. Belum ada image yang dipublikasikan; untuk preview saat ini, gunakan image hasil build dari source dengan cara manual di bawah.
curl -fsSL https://YOUR_KANESH_SITE/install.sh | sh -s -- --db postgres | Flag | Hasil |
|---|---|
--db sqlite | Satu container, data di volume kanesh-data |
--db postgres | Menambah service postgres:17-alpine dengan password acak |
--db mysql | Menambah service mysql:8.4 dengan password acak |
--port 9000 | Membuka Kanesh di port lokal lain |
--mcp | Menyalakan endpoint MCP |
Script menulis docker-compose.yml dan .env privat di ./kanesh, dan tidak pernah menimpa .env yang sudah ada. Image publik hadir bersama rilis pertama; sampai saat itu, build dari source seperti di Memulai.
Opsi B: konfigurasi manual
SQLite
Tidak perlu konfigurasi. File tersimpan di DATA_DIR/kanesh.db, atau atur SQLITE_PATH.
docker run -p 127.0.0.1:8080:8080 -v kanesh-data:/data kanesh PostgreSQL
docker run -p 127.0.0.1:8080:8080 -v kanesh-data:/data \
-e DATABASE_DRIVER=postgres \
-e DATABASE_URL="postgres://kanesh:secret@db.internal:5432/kanesh?sslmode=require" \
kanesh MySQL
Note: MySQL memakai DSN go-sql-driver, bukan URL
mysql://. Pada kedua perintah database eksternal, ganti alamat dan kredensial contoh dengan milikmu sendiri.
docker run -p 127.0.0.1:8080:8080 -v kanesh-data:/data \
-e DATABASE_DRIVER=mysql \
-e DATABASE_URL="kanesh:secret@tcp(db.internal:3306)/kanesh" \
kanesh 3. Selesaikan setup instalasi
Buka http://127.0.0.1:8080 dan klaim instalasi baru sesuai panduan Memulai. Kalau database pilihanmu tidak bisa dijangkau, Kanesh berhenti dengan error, bukan diam-diam pindah ke SQLite.
Pemecahan masalah
- Kanesh berhenti setelah memilih database eksternal: periksa driver, alamat koneksi, dan kredensial. Kegagalan database eksternal tidak membuat Kanesh beralih ke SQLite.
- String koneksi MySQL ditolak: gunakan DSN go-sql-driver seperti contoh di atas, bukan URL
mysql://.