Bagaimana Mengatasi Kesalahan 'Elasticsearch tidak keluar secara normal' Saat Menjalankan Kontainer Docker Elasticsearch?

Bagaimana Mengatasi Kesalahan Elasticsearch Tidak Keluar Secara Normal Saat Menjalankan Kontainer Docker Elasticsearch



Elasticsearch adalah mesin pencari analitik open-source dan terkenal dan sering digunakan di bidang AI dan pembelajaran mesin. Biasanya menyimpan data yang tidak terstruktur, semi-terstruktur, dan terstruktur. Banyak pengguna diharuskan menginstal dan menggunakan Elasticsearch di wadah Docker untuk menjalankannya di lingkungan yang terisolasi.

Namun, saat menjalankan Elasticsearch di wadah Docker berbasis Linux, pengguna mungkin menghadapi “ Elasticsearch tidak keluar secara normal ” kesalahan karena alasan yang tidak diketahui dan menyarankan Anda mencentang “ docker-cluster.log ” berkas.







Artikel ini akan menunjukkan metode bagaimana menyelesaikan ' Elasticsearch tidak keluar secara normal ” kesalahan saat menjalankan wadah Elasticsearch di Docker.



Bagaimana Mengatasi Kesalahan 'Elasticsearch tidak keluar secara normal' Saat Menjalankan Kontainer Docker Elasticsearch?

Kadang-kadang, penampung Elasticsearch tidak dijalankan secara normal karena dijalankan di penampung Linux dan secara default, batas memori virtualnya terlalu rendah. Ini dapat menghentikan wadah dari eksekusi dengan benar dan menampilkan pesan kesalahan “ Elasticsearch tidak keluar secara normal ” seperti yang ditunjukkan di bawah ini:







Untuk mengatasi masalah yang disebutkan, pengguna dapat menambah jumlah mmap memori virtual untuk penampung Linux menggunakan langkah-langkah berikut.



Langkah 1: Mulai Aplikasi Desktop Docker Dengan WSL

Pertama, mulai Docker Desktop dengan WSL. Ini memungkinkan kami untuk menjalankan dan mengelola wadah Linux di Windows:

wsl -D docker-desktop

Langkah 2: Tingkatkan Memori Virtual

Selanjutnya, jalankan perintah di bawah ini untuk menambah batas memori Virtual untuk wadah Linux:

sysctl -Di dalam vm.max_map_count= 262144

Setelah itu, jalankan perintah 'keluar' untuk keluar dari WSL:

Langkah 3: Buat Jaringan

Sekarang, buat jaringan untuk wadah Elasticsearch Docker. Ini opsional tetapi dapat bermanfaat untuk tujuan pencadangan untuk jaringan Elasticsearch:

jaringan buruh pelabuhan membuat elastis

Langkah 4: Jalankan Elasticsearch

Sekarang, jalankan gambar Elasticsearch untuk menginstal dan menjalankan pencarian Elastic di wadah:

menjalankan buruh pelabuhan --nama es01 --bersih elastis -P 9200 : 9200 -P 9300 : 9300 -T docker.elastic.co / elasticsearch / elasticsearch:8.8.2

Dalam perintah yang diberikan di atas:

  • -nama ” menentukan nama wadah Elasticsearch.
  • -bersih ” bendera digunakan untuk menyematkan jaringan eksternal.
  • -P ” adalah menentukan port penampung Elasticsearch.
  • -T ” digunakan untuk menetapkan “ TTY-pseudo ” terminal ke wadah:

Output di bawah ini menunjukkan bahwa kami telah berhasil mengeksekusi wadah Elasticsearch dan menyelesaikan “ Elasticsearch tidak keluar secara normal ” kesalahan.

Di sini, wadah akan menghasilkan “ elastis kata sandi pengguna. Dengan menggunakan kredensial ini, pengguna dapat mengakses Elasticsearch di browser. Ini juga akan menghasilkan token untuk mengonfigurasi Kibana:

Langkah 5: Verifikasi

Navigasi ke ' http://localhost:9200 ” di browser Anda dan verifikasi apakah container dijalankan pada port yang ditentukan atau tidak:

Output di atas menunjukkan bahwa kami telah berhasil mengeksekusi container di port “ 9200 ' dan menyelesaikan ' Elasticsearch tidak keluar secara normal ” kesalahan.

Kesimpulan

Untuk menyelesaikan “ Elasticsearch tidak keluar secara normal ” kesalahan, pengguna diharuskan menambah batas memori Virtual untuk wadah Linux. Untuk melakukannya, pertama jalankan desktop Docker dengan WSL menggunakan “ wsl -d docker-desktop ' memerintah. Setelah itu, tingkatkan batas memori virtual menggunakan tombol “ sysctl -w vm.max_map_count=262144 ' memerintah. Kemudian, jalankan kembali gambar untuk membuat dan memulai wadah Elasticsearch. Posting ini telah mengilustrasikan metode untuk memperbaiki kesalahan 'Elasticsearch tidak keluar secara normal'.