Download dan Jalankan Meilisearch dengan Docker

Mari kita pelajari bersama cara menggunakan docker untuk mengunduh dan menjalankan Meilisearch, mengonfigurasi, serta mengelola data Meilisearch.

Dalam panduan ini, akan dijelaskan cara menggunakan Docker untuk mengunduh dan menjalankan Meilisearch, mengonfigurasi perilakunya, dan mengelola data Meilisearch. Docker adalah alat yang mengemas aplikasi ke dalam kontainer. Kontainer Docker memastikan aplikasi berjalan dengan cara yang sama di berbagai lingkungan. Saat menggunakan Docker untuk pengembangan, disarankan mengikuti petunjuk resmi untuk menginstal Docker Desktop.

Unduh Meilisearch dengan Docker

Kontainer Docker didistribusikan dalam bentuk image. Untuk menggunakan Meilisearch, gunakan perintah docker pull untuk mengunduh image Meilisearch: 

docker pull getmeili/meilisearch:v1.16

Meilisearch menyediakan image Docker baru setiap kali merilis versi  terbaru. Setiap image diberi tag dengan versi Meilisearch yang sesuai, yang ditunjukkan pada contoh di atas oleh teks setelah simbol :. Anda dapat melihat daftar lengkap image Docker Meilisearch yang tersedia di Docker Hub.

"Tag terbaru (latest) akan selalu mengunduh versi rilis paling baru. Namun, Meilisearch menyarankan untuk tidak menggunakan tag spesifik ini, untuk mencegah docker menjalankan image yang berbeda.

 

Jalankan Meilisearch dengan Docker

Setelah menyelesaikan langkah sebelumnya, gunakan perintah docker run untuk menjalankan image Meilisearch:
Salin perintah berikut:

docker run -it --rm \
  -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:v1.16 
 
 

Konfigurasi Meilisearch

Meilisearch menerima sejumlah opsi instance saat dijalankan. Opsi-opsi ini dapat dikonfigurasi dengan dua cara: menggunakan variabel lingkungan (environment variables) dan argumen CLI. Perlu diperhatikan bahwa beberapa opsi hanya tersedia sebagai argumen CLI—silakan merujuk ke referensi konfigurasi kami untuk informasi lebih lengkap.

Mengatur opsi instance dengan variabel environment

Untuk mengirim variabel lingkungan ke Docker, tambahkan argumen -e pada perintah docker run. Contoh berikut menjalankan Meilisearch dengan master key:

docker run -it --rm \
  -p 7700:7700 \
  -e MEILI_MASTER_KEY='MASTER_KEY'\
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:v1.16

Mengatur opsi instance dengan argumen CLI

Jika ingin mengirim argumen baris perintah (command-line arguments) ke Meilisearch melalui Docker, Anda harus menambahkan baris di akhir perintah docker run yang secara eksplisit menjalankan binary meilisearch:

docker run -it --rm \
  -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:v1.16 \
  meilisearch --master-key="MASTER_KEY"

Mengelola Data

Saat menggunakan Docker, direktori kerja Anda adalah /meili_data. Ini berarti lokasi file database Anda berada di /meili_data/data.ms.

Persistensi Data
Secara default, data yang ditulis ke dalam kontainer Docker akan dihapus setiap kali kontainer berhenti berjalan. Data ini mencakup indeks dan dokumen yang disimpan di dalamnya. Untuk menjaga data tetap utuh antara reboot, tentukan volume khusus dengan menjalankan Docker menggunakan opsi baris perintah -v:

docker run -it --rm \
  -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:v1.16

Contoh di atas menggunakan $(pwd)/meili_data, yaitu direktori pada mesin host. Tergantung pada sistem operasi Anda, melakukan mounting volume dari host ke kontainer dapat menyebabkan penurunan performa dan hanya disarankan saat Anda sedang mengembangkan aplikasi. 

Untuk menghasilkan dump dan memperbarui Meilisearch, ikuti langkah-langkah berikut:


Membuat Dump

Untuk mengekspor dump, gunakan endpoint create dump yang dijelaskan dalam panduan dumps kami. Setelah tugas selesai, Anda dapat mengakses file dump di /meili_data/dumps di dalam volume yang Anda berikan dengan opsi -v.

Mengimpor Dump


Untuk mengimpor dump, gunakan opsi baris perintah --import-dump Meilisearch dan tentukan jalur ke file dump. Pastikan jalur tersebut mengarah ke volume yang dapat dijangkau oleh Docker.

Contoh Perintah

Berikut adalah contoh perintah Docker yang akan mengimpor dump dari direktori lokal Anda: 

docker run -it --rm \
  -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:v1.16 \
  meilisearch --import-dump /meili_data/dumps/20200813-042312213.dump

 
Perlu diingat bahwa mengekspor dan mengimpor dump memerlukan penggunaan argumen baris perintah (command-line arguments). Untuk informasi lebih lanjut tentang cara menjalankan Meilisearch dengan opsi CLI dan Docker, lihat bagian terkait dalam panduan ini.

Jika Anda menyimpan data Anda dalam volume persisten seperti yang diinstruksikan pada bagian data persistency, Anda harus menghapus file /meili_data/data.ms di dalam volume tersebut sebelum mengimpor dump.

Gunakan dump untuk memindahkan data antar versi Meilisearch yang berbeda. Baca lebih lanjut tentang memperbarui Meilisearch di panduan khusus Meilisearch.

Snapshots

Untuk membuat snapshot Meilisearch menggunakan Docker, jalankan Meilisearch dengan argumen --schedule-snapshot dan --snapshot-dir.

Perintah untuk Membuat Snapshot

docker run -it --rm \
  -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:v1.16 \
  meilisearch --schedule-snapshot --snapshot-dir /meili_data/snapshots

Argumen --snapshot-dir harus menunjuk ke folder di dalam direktori kerja Docker untuk Meilisearch, yaitu /meili_data. Setelah dibuat, snapshot akan tersedia di direktori yang telah dikonfigurasi. 

Perintah untuk Mengimpor Snapshot

Untuk mengimpor snapshot, jalankan Meilisearch dengan opsi --import-snapshot:

docker run -it --rm \
  -p 7700:7700 \
  -v $(pwd)/meili_data:/meili_data \
  getmeili/meilisearch:v1.16 \
  meilisearch --import-snapshot /meili_data/snapshots/data.ms.snapshot

Gunakan snapshot untuk cadangan data atau saat memindahkan data antara dua instans Meilisearch dengan versi yang sama. Anda bisa membaca lebih lanjut tentang snapshot di panduan.

 

 

 

Comments

Popular posts from this blog

Numpang Kerja Remote dari Bandung Creative Hub

Numpang Kerja Remote dari Bandung Digital Valley

Cara Decompile berkas Dex dan Apk Android