Cara Instalasi CKAN sebagai Portal Open Data pada Ubuntu 22.04
Pendahuluan
Kebutuhan akan data yang terbuka dan mudah diakses terus meningkat, baik di lingkungan pemerintahan, perguruan tinggi, perusahaan, maupun organisasi. Dengan adanya portal open data, berbagai dataset dapat dipublikasikan secara terstruktur sehingga lebih mudah dicari, dianalisis, dan dimanfaatkan oleh masyarakat maupun pengembang aplikasi. Kehadiran portal data yang terpusat juga membantu meningkatkan transparansi serta memudahkan proses berbagi informasi antarinstansi.
Salah satu platform open source yang banyak digunakan untuk membangun portal data adalah CKAN (Comprehensive Knowledge Archive Network). Platform ini menyediakan berbagai fitur untuk mengelola dataset, metadata, organisasi, serta API yang memungkinkan integrasi dengan sistem lain. Berkat fleksibilitas dan dukungan komunitas yang aktif, CKAN telah digunakan oleh banyak institusi di berbagai negara sebagai fondasi portal data.
Persiapan Sebelum Instalasi
Sebelum memulai instalasi, pastikan server telah memenuhi kebutuhan berikut.
Sistem Operasi
- Ubuntu 22.04 LTS.
Spesifikasi Minimum
- CPU 2 Core (disarankan 4+ Core).
- RAM minimal 2 GB (disarankan 4 GB atau lebih).
- Storage minimal 60 GB (disarankan 100 GB+).
Mengenal Komponen yang Dibutuhkan CKAN
CKAN memerlukan beberapa layanan pendukung agar dapat berjalan dengan baik. Setiap layanan memiliki fungsi yang berbeda dan saling terintegrasi.
- PostgreSQL digunakan sebagai database utama untuk menyimpan data dan metadata.
- Solr digunakan sebagai mesin pencarian dataset.
- Redis digunakan untuk cache dan session.
- Python digunakan sebagai lingkungan aplikasi CKAN.
- Nginx digunakan sebagai reverse proxy untuk melayani akses pengguna.
Seluruh komponen tersebut akan diinstal dan dikonfigurasi secara bertahap pada panduan ini.
Instalasi Dependensi
- Menginstal Paket Pendukung
Sebelum menginstal CKAN, pasang terlebih dahulu beberapa paket yang dibutuhkan.sudo apt install -y python3-dev python3-pip python3-venv \ git libpq-dev redis-server nginx openjdk-11-jdkKeterangan:
Paket tersebut diperlukan untuk menjalankan lingkungan Python, Redis, Nginx, serta Java yang digunakan oleh Solr. - Mengaktifkan Redis
Setelah proses instalasi selesai, aktifkan layanan Redis agar berjalan secara otomatis saat server dinyalakan ulang.sudo systemctl enable redis-server sudo systemctl start redis-serverKeterangan:
Redis digunakan oleh CKAN untuk kebutuhan cache dan session. - Memastikan Redis Berjalan
Pastikan layanan Redis telah aktif dengan menjalankan perintah berikut:sudo systemctl status redis-serverApabila berhasil, status layanan akan menampilkan:
active (running)Keterangan:
Status active (running) menunjukkan bahwa Redis telah berjalan dengan normal dan siap digunakan oleh CKAN.
Instalasi PostgreSQL
- Menginstal PostgreSQL
CKAN menggunakan PostgreSQL sebagai database utama untuk menyimpan data dan metadata.sudo apt install -y postgresqlKeterangan:
PostgreSQL merupakan database yang direkomendasikan untuk CKAN dan digunakan secara luas pada lingkungan produksi. - Masuk ke User PostgreSQL
Selanjutnya, masuk ke akun postgres untuk membuat user dan database yang akan digunakan oleh CKAN.sudo -i -u postgresKeterangan:
User postgres memiliki hak akses administratif terhadap layanan PostgreSQL. - Membuat User Database
Buat user khusus untuk CKAN menggunakan perintah berikut:createuser -S -D -R -P ckan_defaultMasukkan kata sandi sesuai keinginan ketika diminta.
Keterangan:
User ckan_default akan digunakan oleh aplikasi CKAN untuk terhubung ke database. - Membuat Database CKAN
Setelah user berhasil dibuat, buat database baru menggunakan perintah berikut:createdb -O ckan_default ckan_defaultKeterangan:
Database ckan_default akan digunakan untuk menyimpan seluruh data yang dikelola oleh CKAN. - Keluar dari User PostgreSQL
Setelah proses pembuatan user dan database selesai, keluar dari akun postgres.exitKeterangan:
Database PostgreSQL kini telah siap digunakan untuk proses instalasi CKAN berikutnya.
Instalasi Apache Solr
- Menginstal Apache Solr
Apache Solr digunakan sebagai mesin pencarian yang memungkinkan CKAN melakukan proses indeks dan pencarian dataset dengan cepat.Unduh Apache Solr menggunakan perintah berikut:
wget https://archive.apache.org/dist/solr/solr/9.9.0/solr-9.9.0.tgzEkstrak file yang telah diunduh:
tar xzf solr-9.9.0.tgzSelanjutnya, instal Solr sebagai service menggunakan perintah berikut:
sudo bash solr-9.9.0/bin/install_solr_service.sh solr-9.9.0.tgzKeterangan:
Apache Solr akan dipasang sebagai service systemd sehingga dapat berjalan secara otomatis setiap kali server dinyalakan. Solr nantinya digunakan oleh CKAN untuk melakukan proses pengindeksan dan pencarian dataset secara efisien.
Membuat Virtual Environment Python
- Membuat Direktori Instalasi CKAN
Buat direktori yang akan digunakan sebagai lokasi instalasi CKAN.sudo mkdir -p /usr/lib/ckan/defaultMasuk ke direktori tersebut:
cd /usr/lib/ckan/defaultKeterangan:
Direktori ini akan digunakan untuk menyimpan virtual environment dan file aplikasi CKAN. - Membuat Virtual Environment
Buat virtual environment Python menggunakan perintah berikut:python3 -m venv venvAktifkan virtual environment:
source venv/bin/activateKeterangan:
Virtual environment digunakan untuk memisahkan dependensi CKAN dari package Python yang terdapat pada sistem sehingga lebih mudah dikelola. - Memperbarui Pip dan Setuptools
Setelah virtual environment aktif, perbarui Pip dan package pendukung lainnya.pip install --upgrade pip setuptools wheelKeterangan:
Memperbarui Pip, Setuptools, dan Wheel membantu memastikan proses instalasi package CKAN dapat berjalan dengan lebih lancar.
Instalasi CKAN
- Menginstal CKAN dari Source Code
Setelah virtual environment aktif, unduh source code CKAN versi 2.11.5 dari repositori resmi GitHub.git clone -b ckan-2.11.5 https://github.com/ckan/ckan.gitMasuk ke direktori CKAN:
cd ckanInstall CKAN dalam mode editable:
pip install -e .Kemudian instal seluruh dependensi yang diperlukan:
pip install -r requirements.txtKeterangan:
CKAN 2.11 lebih disarankan diinstal melalui source code resmi dibandingkan menggunakan pip install ckan. Metode ini memastikan seluruh package dan dependensi Python dapat terpasang dengan baik sehingga mengurangi kemungkinan terjadinya error akibat modul yang tidak ditemukan saat menjalankan CKAN. - Membuat Direktori Konfigurasi
Buat direktori yang akan digunakan untuk menyimpan file konfigurasi CKAN.sudo mkdir -p /etc/ckan/defaultKeterangan:
Direktori ini digunakan untuk menyimpan file konfigurasi utama CKAN yang akan digunakan ketika aplikasi dijalankan. - Membuat File Konfigurasi CKAN
Generate file konfigurasi bawaan menggunakan perintah berikut:ckan generate config /etc/ckan/default/ckan.iniKeterangan:
File ckan.ini berisi berbagai konfigurasi penting seperti koneksi PostgreSQL, Redis, Solr, plugin CKAN, serta pengaturan aplikasi lainnya. File ini akan digunakan pada proses inisialisasi database dan saat menjalankan CKAN.
Konfigurasi Database CKAN
- Mengonfigurasi Koneksi Database PostgreSQL
Edit file konfigurasi CKAN menggunakan perintah berikut:sudo nano /etc/ckan/default/ckan.iniCari baris berikut:
sqlalchemy.url =Ubah menjadi:
sqlalchemy.url = postgresql://ckan_default:password@localhost/ckan_defaultGanti password dengan kata sandi PostgreSQL yang telah dibuat sebelumnya.
Keterangan:
Parameter sqlalchemy.url digunakan oleh CKAN untuk terhubung ke database PostgreSQL. Untuk menghindari masalah parsing URL, sebaiknya hindari penggunaan karakter khusus seperti #, %, @, atau : pada kata sandi PostgreSQL.
Konfigurasi Solr
- Mengonfigurasi Solr
Masih pada file /etc/ckan/default/ckan.ini, cari bagian berikut:solr_url =Ubah menjadi:
solr_url = http://127.0.0.1:8983/solr/ckanSetelah selesai, simpan perubahan pada file konfigurasi.
Keterangan:
Parameter solr_url digunakan oleh CKAN untuk terhubung ke layanan Apache Solr yang berfungsi sebagai mesin pencarian dataset. Pastikan alamat tersebut sesuai dengan konfigurasi core Solr yang telah dibuat sebelumnya.
Memasang Schema CKAN pada Solr
- Mengganti Schema Solr dengan Schema Bawaan CKAN
Masuk ke direktori source code CKAN:cd /usr/lib/ckan/default/ckanSalin file schema bawaan CKAN ke direktori konfigurasi Solr:
sudo cp ckan/config/solr/schema.xml /var/solr/data/ckan/conf/managed-schema.xmlUbah kepemilikan file agar dapat diakses oleh service Solr:
sudo chown solr:solr /var/solr/data/ckan/conf/managed-schema.xmlSelanjutnya, restart layanan Solr:
sudo systemctl restart solrKeterangan:
Schema bawaan Apache Solr tidak sepenuhnya kompatibel dengan CKAN 2.11. Oleh karena itu, schema tersebut perlu diganti menggunakan schema yang disediakan oleh CKAN agar proses pengindeksan dan pencarian dataset dapat berjalan dengan baik.
Inisialisasi Database CKAN
- Menginisialisasi Database CKAN
Aktifkan virtual environment CKAN terlebih dahulu dengan menjalankan perintah berikut:source /usr/lib/ckan/default/venv/bin/activateSelanjutnya, jalankan perintah berikut untuk membuat struktur database CKAN:
ckan -c /etc/ckan/default/ckan.ini db initKeterangan:
Perintah ini akan membuat seluruh tabel dan struktur database yang diperlukan oleh CKAN pada PostgreSQL. Jika proses selesai tanpa error, berarti database CKAN telah berhasil diinisialisasi dan siap digunakan.
Membuat User Administrator
- Membuat User Administrator CKAN
Setelah database berhasil diinisialisasi, buat akun administrator menggunakan perintah berikut:ckan -c /etc/ckan/default/ckan.ini user add adminSistem akan meminta Anda memasukkan beberapa informasi, seperti:
- Username.
- Password.
- Alamat email.
Selanjutnya, tambahkan hak administrator pada akun tersebut dengan menjalankan perintah berikut:
ckan -c /etc/ckan/default/ckan.ini sysadmin add adminKeterangan:
User admin akan memiliki hak akses penuh untuk mengelola CKAN, termasuk membuat organisasi, dataset, pengguna, serta melakukan konfigurasi melalui antarmuka web.
Mengatur URL Situs CKAN
- Mengonfigurasi Alamat Situs CKAN
Edit file konfigurasi CKAN menggunakan perintah berikut:sudo nano /etc/ckan/default/ckan.iniCari bagian berikut:
ckan.site_url =Ubah menjadi:
ckan.site_url = http://IP_SERVER:5000Contoh:
ckan.site_url = http://103.151.140.83:5000Keterangan:
Pengaturan ckan.site_url digunakan untuk menentukan alamat utama CKAN. Konfigurasi ini penting agar menu seperti Dashboard, Login, dan Logout tidak mengarah ke localhost, melainkan ke alamat server yang dapat diakses oleh pengguna.
Menjalankan CKAN
- Menginstal Gunicorn
Aktifkan virtual environment CKAN:source /usr/lib/ckan/default/venv/bin/activateInstall Gunicorn:
pip install gunicornPastikan Gunicorn berhasil terpasang:
which gunicornContoh output:
/usr/lib/ckan/default/venv/bin/gunicornKeterangan:
Gunicorn berfungsi sebagai WSGI server yang digunakan untuk menjalankan aplikasi CKAN pada lingkungan produksi. - Membuat Service CKAN
Buat file service systemd:sudo nano /etc/systemd/system/ckan.serviceIsi dengan konfigurasi berikut:
[Unit] Description=CKAN Application After=network.target [Service] User=root Group=root WorkingDirectory=/usr/lib/ckan/default/ckan Environment="CKAN_INI=/etc/ckan/default/ckan.ini" ExecStart=/usr/lib/ckan/default/venv/bin/gunicorn \ --workers 4 \ --bind 127.0.0.1:8000 \ wsgi:application Restart=always RestartSec=5 [Install] WantedBy=multi-user.targetKeterangan:
Service ini memungkinkan CKAN berjalan secara otomatis ketika server dinyalakan tanpa perlu menjalankannya secara manual melalui terminal. - Mengaktifkan Service CKAN
Muat ulang konfigurasi systemd:sudo systemctl daemon-reloadAktifkan service:
sudo systemctl enable ckan sudo systemctl start ckanPeriksa status service:
sudo systemctl status ckanStatus yang diharapkan:
active (running)Keterangan:
Status active (running) menunjukkan bahwa aplikasi CKAN telah berjalan dengan baik melalui Gunicorn. - Mengonfigurasi Nginx sebagai Reverse Proxy
Buat file konfigurasi:sudo nano /etc/nginx/sites-available/ckanIsi dengan konfigurasi berikut:
server { listen 80; server_name IP_SERVER; client_max_body_size 100M; location / { proxy_pass http://127.0.0.1:8000; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; } }Ganti IP_SERVER dengan domain atau alamat IP VPS yang digunakan.
Contoh:
server_name 103.151.140.83;Keterangan:
Nginx akan meneruskan seluruh permintaan pengguna ke Gunicorn yang berjalan pada port 8000. - Mengaktifkan Konfigurasi Nginx
sudo ln -s /etc/nginx/sites-available/ckan /etc/nginx/sites-enabled/Periksa konfigurasi Nginx:
sudo nginx -tRestart Nginx:
sudo systemctl restart nginxKeterangan:
Apabila tidak ditemukan kesalahan konfigurasi, Nginx akan mulai melayani akses ke CKAN melalui port 80. - Mengakses CKAN
Setelah seluruh konfigurasi selesai, CKAN dapat diakses melalui:http://IP_SERVERAtau apabila menggunakan domain:
http://data.domainanda.comOutput:

Keterangan:
Anda tidak perlu lagi menjalankan perintah ckan run --host 0.0.0.0 karena CKAN telah dijalankan sebagai service systemd menggunakan Gunicorn dan diteruskan oleh Nginx sebagai reverse proxy.
Kesimpulan
CKAN merupakan salah satu platform open source terbaik untuk membangun portal open data. Dengan dukungan pengelolaan dataset, mesin pencarian yang andal, serta API yang fleksibel, CKAN banyak digunakan oleh instansi pemerintah, perguruan tinggi, maupun organisasi yang ingin menyediakan data secara terbuka dan terstruktur.
Melalui panduan ini, Anda telah mempelajari cara menginstal CKAN di Ubuntu 22.04, mulai dari pemasangan PostgreSQL, Redis, dan Apache Solr, hingga menjalankan aplikasi menggunakan Gunicorn dan Nginx sebagai reverse proxy. Setelah CKAN berhasil berjalan, Anda dapat melanjutkan konfigurasi HTTPS, menambahkan organisasi dan dataset, serta melakukan optimasi agar portal open data dapat digunakan secara optimal pada lingkungan produksi.


