Perbandingan Alternatif Trello Self-Hosted Terbaik
Bandingkan Planka, Vikunja, Focalboard, Wekan, dan Kanboard berdasarkan RAM minimum, database, SSO, impor Trello, serta status pemeliharaannya.
Alternatif Trello self-hosted mana yang sebaiknya dipilih?
Tiga alternatif Trello self-hosted layak dipertimbangkan: Planka jika Anda menginginkan board Trello yang sama persis beserta file impornya, Vikunja jika tim memerlukan single sign-on dan fitur yang lebih luas daripada board, serta Kanboard jika VPS (virtual private server) yang digunakan berukuran kecil. Jangan memulai proyek baru dengan Focalboard. Server standalone-nya belum merilis versi baru selama 783 hari, dan README-nya kini meminta maintainer.
Wekan adalah tool kelima dari 5 tool yang dibahas di sini. Tool ini berfungsi, tetapi menggunakan memori beberapa kali lebih banyak daripada semua tool lainnya. Setiap versi, lisensi, dan tanggal di bawah ini telah diperiksa pada 5 August 2026.
Berapa RAM yang dibutuhkan setiap alat board?
The data behind this chart
[
{
"tool": "Planka + Postgres",
"idle_memory_mb": 280
},
{
"tool": "Vikunja + SQLite",
"idle_memory_mb": 110
},
{
"tool": "Focalboard + SQLite",
"idle_memory_mb": 120
},
{
"tool": "Wekan + FerretDB",
"idle_memory_mb": 750
},
{
"tool": "Kanboard + SQLite",
"idle_memory_mb": 70
}
]Angka tersebut adalah penggunaan saat idle yang umum pada instalasi baru tanpa pengguna aktif. Angka ini biasanya dilaporkan docker stats satu menit setelah stack berjalan. Gunakan angka tersebut untuk memperkirakan kebutuhan paket, lalu ukur sistem Anda sendiri. Polanya lebih penting daripada jumlah megabita yang tepat.
Kanboard adalah batas bawah pada 70 MB karena menggunakan PHP dengan SQLite. Tidak ada proses aplikasi yang berjalan lama untuk menyimpan board di memori, sehingga container hampir tidak menggunakan memori di antara permintaan. Vikunja adalah satu binary Go dengan penggunaan 110 MB. SQLite adalah database bawaannya, sehingga satu container sudah mencakup seluruh stack. Planka membutuhkan 280 MB karena selalu terdiri dari dua container: server Node dan PostgreSQL. Planka tidak memiliki opsi SQLite, sehingga database tersebut tidak dapat diganti.
Wekan menggunakan 750 MB karena merupakan aplikasi Meteor. Meteor menyimpan lapisan live query di memori Node dan mengirim setiap perubahan board ke setiap browser yang terbuka melalui WebSocket. Karena itu, penggunaan memorinya bertambah sesuai jumlah pengguna yang terhubung, bukan tetap konstan. Pada VPS 1 GB, Wekan dapat berjalan saat mulai, tetapi kemudian berhenti ketika beberapa orang membuka board besar. Gejalanya adalah container menghilang lalu muncul kembali dengan exit code 137, yang ditampilkan docker compose ps sebagai loop restart. Konfirmasikan pada host dengan dmesg -T | grep -i "out of memory" karena kernel out-of-memory killer tidak pernah memberi tahu aplikasi.
Ketergantungan pada database menentukan separuh pekerjaan pencadangan Anda. Berikut ringkasannya dalam satu baris untuk setiap aplikasi. Planka memerlukan PostgreSQL. Vikunja menggunakan SQLite secara default dan juga mendukung PostgreSQL serta MySQL atau MariaDB. Kanboard menggunakan SQLite secara default dan juga mendukung MySQL, MariaDB, serta PostgreSQL. Dokumentasinya merekomendasikan PostgreSQL dan memperingatkan agar tidak menggunakan SQLite pada NFS (network file system). Focalboard menggunakan SQLite secara default. Wekan menggunakan wire protocol MongoDB. File Compose bawaannya kini menyertakan FerretDB v1 dengan backend SQLite tertanam, bukan server MongoDB sungguhan. File Compose MongoDB 7 terpisah tersedia jika Anda menginginkannya.
Proyek mana saja yang masih dipelihara?
The data behind this chart
[
{
"tool": "Planka 2.1.1",
"release_age": 109
},
{
"tool": "Vikunja 2.5.0",
"release_age": 1
},
{
"tool": "Focalboard 8.0.0",
"release_age": 783
},
{
"tool": "Wekan 10.67",
"release_age": 1
},
{
"tool": "Kanboard 1.2.53",
"release_age": 12
}
]Focalboard merupakan pengecualian dengan usia rilis 783 hari. Rilis standalone terakhirnya, v8.0.0, berasal dari Juni 2024. Mattermost memindahkan pengembangan board ke dalam plugin di repository terpisah, dan README standalone menyatakan bahwa repository tersebut saat ini tidak dipelihara. Inilah satu-satunya jawaban “tidak” yang jelas dalam perbandingan ini. Proyek lainnya memiliki kompromi masing-masing.
Usia rilis Planka, yaitu 109 hari, masih sehat untuk proyek yang merilis beberapa versi per tahun. Version 2.1.1 dirilis pada April 2026. Kanboard merilis v1.2.53 12 hari sebelum pemeriksaan, dan dua rilis sebelumnya tersedia pada Maret dan April 2026.
Vikunja dan Wekan sama-sama merilis versi dalam satu hari sebelum pemeriksaan, tetapi kedua fakta tersebut perlu dipahami secara berbeda. Vikunja menandai v2.5.0 sebagai rilis minor biasa. Wekan menandai v10.65, v10.66, dan v10.67 pada hari yang sama, sesuai dengan ritme rilis normalnya. Rilis yang sering tidak berarti targetnya stabil. Dengan Wekan, Anda memilih untuk mengikuti nomor versi yang berubah cepat. Karena itu, pin tag tersebut dan baca catatan rilis sebelum setiap pembaruan versi.
Apakah Anda mendapatkan lebih dari sekadar board?
Sebagian besar artikel perbandingan berhenti pada pernyataan "tampilannya seperti Trello". Aspek ini lebih menentukan daripada RAM, karena board bukan bentuk yang sesuai untuk semua hal yang memiliki tenggat waktu.
- Planka hanya merupakan alat board: project, board, list, card, label, checklist, komentar, dan lampiran. Tampilan kalender dan peta merupakan fitur Pro per Agustus 2026.
- Vikunja menyediakan empat tampilan untuk satu kumpulan task: List, Kanban, Table, dan Gantt. Sebuah task hanya ada satu kali. Anda dapat mengganti tampilan tanpa menduplikasinya.
- Kanboard menyediakan board dengan batas work-in-progress, subtask, lampiran, komentar, tindakan otomatis, dan bahasa kueri sederhana untuk filtering. Beranda resminya menyatakan "The number of features is voluntarily limited", yang merupakan deskripsi yang tepat.
- Wekan menyediakan board dengan swimlane, serta checklist, custom field, REST (representational state transfer) API, dan webhook.
- Focalboard menyediakan tampilan board, table, dan kalender untuk card yang sama. Focalboard dicantumkan di sini sebagai informasi lengkap.
Jika yang sebenarnya Anda inginkan adalah wiki dengan pelacakan task, perbandingan ini tidak sesuai. BookStack, Wiki.js, dan Outline membahas bentuk tersebut, sedangkan alternatif Notion yang dapat di-hosting sendiri membahas workspace all-in-one.
Akses multi-pengguna dan single sign-on
Planka mendukung OpenID Connect dalam edisi Community gratis. File Compose resmi menyertakan pengaturan tersebut dalam keadaan dikomentari, termasuk OIDC_ISSUER, OIDC_CLIENT_ID, dan OIDC_CLIENT_SECRET, sehingga Anda cukup menghapus tanda komentar tanpa perlu melakukan upgrade. Peran guest untuk orang di luar organisasi merupakan fitur Pro.
Vikunja mendukung OpenID Connect dengan beberapa provider sekaligus. Tetapkan VIKUNJA_AUTH_OPENID_ENABLED=true, lalu tambahkan satu blok variabel VIKUNJA_AUTH_OPENID_PROVIDERS_<ID>_* untuk setiap provider. Vikunja juga memiliki teams dan berbagi per proyek, yang sebenarnya dibutuhkan oleh organisasi dengan dua puluh orang.
Wekan mendukung LDAP (lightweight directory access protocol), OAuth2, OIDC, dan SAML. Kanboard memiliki LDAP bawaan dan plugin OAuth2 generik untuk kebutuhan lainnya, serta peran dan grup per proyek. Server standalone Focalboard sama sekali tidak memiliki single sign-on. Ini menjadi alasan kedua untuk tidak memilihnya.
Semua pasangan ini dapat digunakan dengan identity provider Authentik yang Anda jalankan sendiri, yang biasanya lebih baik daripada memberi dua puluh orang satu kata sandi terpisah untuk setiap aplikasi.
Dapatkah Anda mengimpor board Trello?
Planka menyediakan jalur yang paling sederhana. Ekspor board dari Trello dalam format JSON, buat board di Planka, klik Import, lalu pilih Trello. Baca batasannya terlebih dahulu karena batas tersebut berlaku: pengguna dan lampiran tidak diimpor, hanya satu checklist per kartu yang dapat diimpor, dan ekspor JSON default Trello berhenti setelah 1,000 tindakan tanpa peringatan bahwa data telah terpotong. Periksa sendiri file tersebut sebelum mempercayai hasilnya.
Vikunja mengimpor data melalui alur OAuth Trello, pada Settings lalu "Import from other services". Setiap migrator harus diaktifkan dalam konfigurasi sebelum ikonnya muncul, dan VIKUNJA_SERVICE_PUBLICURL harus benar karena pengalihan OAuth berlangsung di browser Anda, bukan dari server. Vikunja juga dapat mengimpor data dari Todoist, Microsoft To Do, TickTick, dan Wekan.
Wekan menerima JSON board Trello yang ditempelkan pada formulir impornya. Kanboard tidak memiliki pengimpor Trello bawaan. Ini adalah alasan utama untuk tidak memilihnya jika Anda perlu memindahkan riwayat Trello selama bertahun-tahun.
Seperti apa pengalaman penggunaan di perangkat seluler?
Vikunja adalah satu-satunya dari lima aplikasi yang memiliki aplikasi seluler resmi. Build Android dan iOS dirilis bersamaan dengan setiap rilis, dan repositori aplikasinya menyebut aplikasi tersebut berstatus alpha. Karena itu, anggap aplikasi ini sebagai pendamping antarmuka web, bukan sebagai cara utama untuk mengakses layanan. Planka tidak memiliki aplikasi resmi dari proyeknya, meskipun antarmuka webnya responsif dan tersedia klien pihak ketiga. Wekan dan Kanboard hanya dapat digunakan melalui web, sedangkan antarmuka Kanboard jelas dirancang untuk layar desktop.
Pertanyaan tentang lisensi, dan alasan Planka berbeda
Planka tidak lagi merupakan open source, dan fakta ini sering diabaikan dalam sebagian besar perbandingan. Planka pada awalnya menggunakan lisensi MIT, beralih ke AGPL-3.0 pada 2023, lalu sejak seri 2.0 dirilis berdasarkan PLANKA Community License, yaitu lisensi fair-code yang dimiliki oleh PLANKA Software GmbH. GitHub mencantumkan lisensinya sebagai "Other" karena lisensi tersebut belum disetujui OSI. Self-hosting untuk digunakan oleh orang-orang di organisasi Anda bersifat gratis dan secara eksplisit diizinkan, termasuk untuk penggunaan pribadi, internal, nirlaba, dan pendidikan. Menjual kembali akses ke Planka atau menjalankannya sebagai layanan untuk perusahaan lain memerlukan lisensi komersial.
Untuk dua orang, ketentuan tersebut cukup wajar. Untuk sebuah perusahaan, ketentuan ini perlu dibaca sebelum pekerjaan dua puluh orang dimasukkan ke dalamnya. Empat aplikasi lainnya menggunakan open source biasa: Vikunja menggunakan AGPL-3.0, sedangkan Wekan dan Kanboard menggunakan MIT, dan Focalboard menggunakan kombinasi Apache 2.0 dan AGPL-3.0.
File Compose dengan Versi Image Tetap untuk Dua Pilihan
Tetapkan tag image. latest berarti docker compose pull berikutnya dapat memindahkan Anda ke versi mayor lain, dan versi mayor menjalankan migrasi database yang tidak mudah dibatalkan. Kedua file di bawah ini adalah file upstream dengan tag yang ditetapkan ke rilis nyata.
Vikunja pada SQLite, satu container:
services:
vikunja:
image: vikunja/vikunja:2.5.0
restart: unless-stopped
environment:
VIKUNJA_SERVICE_PUBLICURL: https://tasks.example.com
VIKUNJA_SERVICE_SECRET: replace-with-a-long-random-string
VIKUNJA_SERVICE_TIMEZONE: Europe/Berlin
VIKUNJA_DATABASE_TYPE: sqlite
VIKUNJA_DATABASE_PATH: /app/vikunja/files/vikunja.db
ports:
- "127.0.0.1:3456:3456"
volumes:
- ./files:/app/vikunja/filesBuat direktori data dengan pemilik yang benar terlebih dahulu karena container berjalan sebagai UID 1000 dan tidak dapat menulis ke direktori milik root:
mkdir -p files && sudo chown 1000 files
docker compose up -d
docker compose ps
curl -sf http://127.0.0.1:3456/api/v1/infoStack yang sehat menampilkan service sebagai running, dan endpoint info mengembalikan JSON yang berisi field version. Connection refused di sini berarti container telah berhenti. docker compose logs vikunja menyebutkan penyebabnya, dan error izin pada file database adalah penyebab yang umum.
Planka pada PostgreSQL, dua container:
services:
planka:
image: ghcr.io/plankanban/planka:2.1.1
restart: unless-stopped
volumes:
- data:/app/data
ports:
- "127.0.0.1:3000:1337"
environment:
- BASE_URL=https://boards.example.com
- DATABASE_URL=postgresql://postgres@postgres/planka
- SECRET_KEY=replace-with-openssl-rand-hex-64
depends_on:
postgres:
condition: service_healthy
postgres:
image: postgres:16-alpine
restart: unless-stopped
volumes:
- db-data:/var/lib/postgresql/data
environment:
- POSTGRES_DB=planka
- POSTGRES_HOST_AUTH_METHOD=trust
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d planka"]
interval: 10s
timeout: 5s
retries: 5
volumes:
data:
db-data:POSTGRES_HOST_AUTH_METHOD=trust berarti PostgreSQL menerima koneksi apa pun tanpa password. Ini aman hanya karena port database tidak pernah dipublikasikan ke host, sehingga satu-satunya yang dapat mengaksesnya adalah container lain pada jaringan Compose yang sama. Jangan tambahkan entri ports: ke service postgres.
Kedua stack tidak boleh terhubung langsung ke Internet. Keduanya melakukan binding ke 127.0.0.1, jadi tempatkan reverse proxy di depannya dan lakukan terminasi TLS (transport layer security) di sana. Traefik di depan beberapa aplikasi Compose adalah cara yang umum setelah Anda meng-host lebih dari satu layanan, dan panduan dasar Docker Compose menjelaskan bagian-bagian file ini yang tidak dibahas pada halaman ini.
Board Anda adalah database, jadi buat cadangannya
Tool board dapat gagal tanpa pesan. Tidak ada yang menyadari bahwa backup hilang sampai sebuah volume lenyap, dan file SQLite yang rusak dapat terbuka secara normal lalu melaporkan database disk image is malformed minggu kemudian.
Jangan pernah menyalin file SQLite yang sedang digunakan dengan cp. Salinan tersebut dapat menangkap proses penulisan yang belum selesai. Akibatnya, arsip tampak lengkap, tetapi saat dipulihkan, database kehilangan beberapa baris. Hentikan service selama beberapa detik yang diperlukan untuk menyalin:
docker compose stop vikunja
tar czf vikunja-$(date +%F).tgz files
docker compose start vikunjaUntuk Planka, lakukan dump PostgreSQL. Jangan menyalin direktori data dari cluster yang sedang berjalan. Ambil volume uploads secara terpisah karena lampiran tidak disimpan di dalam database:
docker compose exec -T postgres pg_dump -U postgres -Fc planka > planka-db.dump
docker volume ls
docker run --rm -v planka_data:/data -v "$PWD":/backup alpine \
tar czf /backup/planka-files.tgz -C /data .docker volume ls mencetak nama volume sebenarnya. Nama tersebut merupakan nama project Compose Anda yang diikuti _data. Jika Anda memberikan nama yang tidak ada, perintah tersebut membuat volume kosong dan menghasilkan arsip yang valid tetapi kosong tanpa pesan error. Karena itu, periksa ukuran file setelahnya.
Kemudian, pulihkan arsip tersebut sekali ke dalam stack uji pada mesin yang sama, lalu buka card yang Anda ingat. Backup yang belum pernah dipulihkan hanyalah perkiraan. Kirim arsip tersebut ke luar server juga. Salinan yang disimpan di VPS yang sedang Anda lindungi bukanlah backup. backup restic dari VPS membahas bagian tersebut.
Dua rekomendasi
Untuk dua orang pada VPS 2 GB: gunakan Planka. Tampilannya dan perilakunya paling mirip dengan Trello, impor Trello dilakukan dengan menyeret sebuah file ke aplikasi, dan memori idle sebesar 280 MB menyisakan sebagian besar kapasitas 2 GB untuk reverse proxy dan layanan lain yang Anda host. Community License mencakup tim internal yang terdiri atas dua orang tanpa biaya. Jika Anda tidak ingin bergantung pada lisensi yang menyediakan kode sumber, gunakan Vikunja pada SQLite dengan memori 110 MB. Vikunja merupakan pilihan open source untuk server yang sama.
Untuk dua puluh orang dalam sebuah organisasi: gunakan Vikunja pada PostgreSQL. Pada skala ini, Anda memerlukan OpenID Connect, bukan dua puluh password lokal. Anda juga memerlukan team dan berbagi per proyek. Sebagian besar pekerjaan tidak akan cocok dikelola dalam board, sehingga tampilan List, Table, dan Gantt bukan lagi sekadar fitur tambahan. AGPL-3.0 juga berarti tidak ada pembahasan lisensi ketika jumlah pengguna bertambah. Gunakan PostgreSQL, bukan SQLite. Tempatkan Vikunja di belakang reverse proxy, lalu simpan dump harian di lokasi selain server tersebut.
Jika server memiliki RAM kurang dari 1 GB, kedua pilihan tersebut tidak berlaku. Gunakan Kanboard dengan memori 70 MB. Terima bahwa Anda harus memasukkan kembali kartu Trello secara manual, lalu gunakan memori yang dihemat untuk hal lain dari daftar pilihan self-hosting untuk 2026. Panduan instalasi lengkap untuk alat yang Anda pilih sebaiknya dibuat sebagai panduan tersendiri. Halaman ini hanya membahas pemilihan.
FAQ
Alternatif Trello self-hosted mana yang menggunakan RAM paling sedikit?
Kanboard, sekitar 70 MB saat idle, karena menggunakan PHP dengan SQLite dan tidak menyimpan apa pun di memori di antara request. Berikutnya adalah Vikunja, sekitar 110 MB sebagai satu binary Go. Wekan paling berat, sekitar 750 MB, karena Meteor mempertahankan lapisan live query di memori Node untuk setiap browser yang terhubung. Ukur penggunaan pada sistem Anda sendiri dengan docker stats setelah stack berada dalam kondisi idle, karena angka ini bersifat umum dan bukan jaminan.
Apakah saya dapat mengimpor board Trello ke tool self-hosted?
Planka dan Wekan dapat langsung menerima ekspor board Trello dalam format JSON. Vikunja mengimpor melalui alur OAuth Trello, dan migrator harus diaktifkan dalam konfigurasi sebelum muncul di antarmuka. Kanboard tidak memiliki importer bawaan. Ada dua batasan yang perlu diperhatikan: Planka tidak mengimpor user atau attachment dan hanya menangani satu checklist per card, sedangkan ekspor JSON default Trello berhenti pada 1,000 action tanpa memberi tahu bahwa data telah dipotong.
Apakah Focalboard masih merupakan pilihan yang baik pada 2026?
Tidak. Rilis standalone terakhir, v8.0.0, berasal dari Juni 2024, yaitu 783 hari sebelum perbandingan ini diperiksa pada 5 August 2026, dan README menyatakan bahwa repository tersebut saat ini tidak dipelihara. Mattermost melanjutkan pengembangan board hanya sebagai plugin di repository terpisah. Jadi, server yang akan Anda self-host adalah bagian yang sudah tidak dilanjutkan. Sebagai gantinya, pilih Planka atau Vikunja.
Apakah Planka masih open source?
Tidak menurut definisi OSI. Planka sebelumnya menggunakan MIT, beralih ke AGPL-3.0 pada 2023, dan dirilis dengan PLANKA Community License mulai version 2.0. Self-hosting gratis untuk penggunaan pribadi, internal, nirlaba, dan pendidikan. Menjual kembali akses atau menjalankannya sebagai service untuk pihak ketiga memerlukan lisensi komersial, sedangkan calendar view, guest role, dan recurring card tersedia dalam tier Pro. Jika lisensi yang disetujui OSI merupakan persyaratan mutlak, Vikunja menggunakan AGPL-3.0 dan Kanboard menggunakan MIT.
Apakah saya memerlukan PostgreSQL, atau apakah SQLite sudah cukup?
Vikunja, Kanboard, dan Focalboard menggunakan SQLite secara default. SQLite cukup untuk beberapa orang pada satu server. Planka memerlukan PostgreSQL dan tidak menyediakan opsi SQLite. Beralihlah ke PostgreSQL ketika beberapa orang menulis data secara bersamaan, karena SQLite membuat operasi tulis berjalan secara serial dan instance yang sibuk mulai mengembalikan database is locked. Jangan menempatkan file SQLite pada network share. Dokumentasi Kanboard juga memperingatkan agar SQLite tidak digunakan pada NFS karena alasan yang sama.