Bagaimana dan Mengapa Menjalankan Redis di Docker

Diterbitkan: 2023-05-02

Redis adalah database dalam memori yang sangat tersedia. Penyimpanan data nilai kunci yang persisten disk-nya ideal untuk beberapa penggunaan dengan ketersediaan tinggi.

Di sisi lain, Docker adalah alat untuk mengemas aplikasi dan layanan, mengisolasi lingkungannya dan memungkinkannya berjalan secara terpisah. Anda dapat menggunakan Docker sebagai pengelola paket untuk aplikasi dan layanan dengan semua dependensi, konfigurasi, skrip, dll. yang diperlukan. Skrip yang disebut Dockerfile ditempatkan di dalam wadah Docker dan memungkinkan Anda menerapkan wadah sebagai satu kesatuan.

Artikel ini mengajarkan Anda cara menggunakan kedua teknologi sumber terbuka ini secara efektif. Ini juga menyentuh mengapa menjalankan klaster Redis di dalam wadah Docker sangat penting dan keuntungan serta manfaat melakukannya dibandingkan dengan menjalankan klaster Redis di mesin virtual atau server bare metal.

Berbagai Penggunaan Redis

Redis memiliki beberapa keunggulan. Penggunaannya yang paling populer meliputi:

  • Cache basis data nilai kunci terdistribusi
  • Pialang pesan
  • Server caching objek yang persisten

Selain itu, Redis dapat mendukung banyak tipe dan struktur data, membuatnya cocok untuk digunakan sebagai lapisan database primer dan sekunder untuk aplikasi. Ini juga mendukung daftar, aliran, hash, set, dll.

Namun, Anda dapat mendorong manfaat Redis lebih jauh dengan mengemasnya.

Redis terbaik di dalam wadah! Pelajari cara menggunakan Redis & Docker secara efektif dan dapatkan keuntungan dari mengemas aplikasi Redis Anda - semuanya ada di postingan ini ️ Klik untuk Tweet

Redis Paling Baik Di Dalam Wadah

Redis adalah salah satu gambar Docker paling populer di registri Docker, dengan lebih dari satu miliar unduhan. Alasan untuk mengemas aplikasi Redis adalah untuk mendapatkan manfaat Docker dan dukungan komunitas untuk kasus penggunaan Redis yang paling umum.

Gambar Redis Docker memiliki komunitas sumber terbuka yang membuat dan memelihara dokumentasi yang jelas. Dan yang terpenting, Docker sangat andal dan memungkinkan penggunaan yang mudah dan fleksibilitas.

Kemudahan penggunaan

Docker mengisolasi lingkungan untuk aplikasi dan layanan yang berjalan di dalam kontainer. Isolasi berarti Anda dapat mengemas, membuat, dan mengirim gambar Redis yang bekerja terlepas dari sistem operasi host, yang membuat pengembangan dan menjalankan aplikasi Redis di dalam Docker menjadi mudah. Selain itu, Docker Desktop menyederhanakan pengaturan lingkungan pengembangan lokal yang konsisten, yang sangat berguna untuk tim besar.

Keamanan:

Anda dapat memindai kerentanan keamanan dengan Redis di dalam wadah. Docker menggunakan Snyk, sebuah alat yang memberikan visibilitas ke dalam keamanan citra Docker. Itu memindai wadah Docker dan memberikan detail dan perbaikan jika ada gambar yang rusak. Docker juga dapat menghasilkan software bill of material (SBOM) untuk memindai semua dependensi yang digunakan dalam membangun citra kontainer, meskipun masih dalam tahap percobaan.

Fleksibilitas

Docker tersedia untuk sebagian besar sistem dan aplikasi berbasis Unix dan Windows. Karena Anda menggunakan kontainer untuk mengisolasi perangkat lunak dari lingkungannya guna memastikannya berfungsi dengan semua sistem, aplikasi dan layanan Redis selalu berjalan terlepas dari infrastrukturnya.

Keandalan

Docker memungkinkan Anda menjalankan beban kerja terkontainer apa pun di lingkungan apa pun dengan andal. Redis dapat diandalkan di Docker karena container Docker secara berkala mengambil snapshot image container, memungkinkan Anda untuk kembali ke snapshot ini jika database rusak atau rusak. Anda juga dapat membuat volume Docker dengan memasang direktori yang berisi file database Redis di dalam wadah.

Volume Docker membantu menjaga wadah aman dari segala bentuk kehilangan data yang tidak disengaja. Namun, peringatannya adalah volume Docker tidak menyertakan snapshot gambar. Anda harus secara manual menyimpan atau mencadangkan data di file database Redis Anda secara berkala.

Cara Menggunakan Redis Dengan Docker

Untuk menempatkan toko Redis Anda di dalam wadah Docker, Anda harus memiliki Docker di lingkungan target. Petunjuk berikut menunjukkan cara menginstal Docker di Windows.

Anda dapat mengikuti panduan di situs web Docker untuk OS berbasis Unix atau Unix. Setelah instalasi dan konfigurasi, Anda dapat membuat jaringan di dalam wadah Docker Anda. Kemudian Anda dapat menginstal Redis dan membuat database. Terakhir, Anda dapat melakukan operasi pada database Redis Anda.

Pertama, instal Docker di sistem operasi Anda. Secara opsional, arahkan ke Docker Hub dan buat akun. Anda memerlukan akun untuk membuat dan menerbitkan gambar Anda.

Formulir pendaftaran hub Docker
Docker Hub

Setelah membuat akun, masuk ke Docker Hub dan unduh Docker Desktop versi terbaru sistem operasi Anda.

Unduh halaman untuk Docker Desktop dengan opsi untuk sistem operasi.
halaman unduhan Docker

Setelah prosedur instalasi, buka jendela terminal Anda untuk melihat apakah Docker Engine siap dijalankan dan masukkan perintah berikut:

 docker --version
Periksa versi Docker yang diinstal
Versi Docker diinstal

Kemudian ketik: docker-compose --version .

Periksa versi Compose yang diinstal dengan Docker
Compose diinstal dengan Docker

Compose adalah alat untuk mendefinisikan dan menjalankan aplikasi Docker multi-kontainer menggunakan file YAML, yang Anda gunakan untuk mengonfigurasi layanan aplikasi.

Anda dapat menjalankan Dockerized Redis untuk memvalidasi bahwa Docker Engine aktif dan berjalan menggunakan kode di bawah ini. Contoh ini menjalankan image Redis dari Docker Hub dan menamakannya my-redis-container .

 docker run --name my-redis-container -d redis
Jalankan image Redis dari Docker Hub bernama my-redis-container
Redis image dari Docker Hub bernama my-redis-container

Karena Anda tidak memiliki image secara lokal, Docker menarik image Redis dari Docker Hub.

Sekarang, Anda dapat membuka Docker Desktop untuk mengonfirmasi bahwa ia menarik image Redis. Di Dasbor, klik Gambar di panel sisi kiri.

Pastikan image Redis Anda aktif dan berjalan dari Docker Desktop
Dekstop Docker

Sekarang, Anda dapat membuat jaringan. Perhatikan bahwa driver Docker menggunakan bridge atau overlay driver jaringan bawaan untuk membuat jaringan Docker. Anda juga dapat menginstal dan menggunakan driver jaringan pihak ketiga.

Perbedaannya adalah bahwa jaringan jembatan diisolasi pada satu instalasi Docker Engine, sementara jaringan overlay menjangkau beberapa host Docker, masing-masing menjalankan mesin.

Jenis:

 docker network create -d bridge kinsta-demo-network
Buat jaringan Docker baru dengan driver bridge
Jaringan Docker dengan driver jembatan

Jika Anda tidak menentukan driver apa pun secara default, Docker menggunakan driver bridge untuk membuat jaringan baru karena secara otomatis membuat driver bridge saat Anda menginstal Docker Engine. Namun, jika Anda menjalankan container Docker dengan perintah Docker run, ia tidak akan menggunakan jaringan ini.

Sekarang setelah Anda memiliki jaringan, menginstal Redis di dalam wadah Docker adalah langkah selanjutnya. Untuk melakukannya, ketik: docker pull redis .

Tarik citra Redis dari Docker Hub
Tarik citra Redis dari Docker Hub

Untuk memverifikasi gambar Redis diinstal dengan benar, jalankan salah satu dari perintah berikut:

 docker images
 docker image ls
Daftar gambar Docker yang tersedia di terminal pengguna
Gambar Docker yang tersedia di terminal pengguna


Selanjutnya, Anda membuat dan memulai wadah Redis. Untuk melakukannya, jalankan perintah berikut:
 docker run -it –name dev_kinsta_redis_container -d redis
Buat dan jalankan wadah Docker
Wadah Docker

Sekarang verifikasi bahwa Redis berjalan di wadah. Untuk melakukannya, ketik: docker ps .

Verifikasi bahwa Redis aktif dan berjalan dalam wadah
Verifikasi bahwa Redis aktif dan berjalan dalam wadah

Sekarang setelah Anda mengonfirmasi bahwa container Docker Anda sudah aktif dan berjalan, Anda dapat menambahkan container tersebut ke jaringan. Ketik: docker network connect .

Tambahkan wadah Docker ke jaringan buruh pelabuhan yang dibuat
Tambahkan wadah Docker ke jaringan buruh pelabuhan yang dibuat

Dengan semuanya berfungsi seperti yang diharapkan, langkah selanjutnya adalah memverifikasi server Redis Anda yang berjalan di dalam Docker siap menerima koneksi. Untuk melakukannya, gunakan docker logs .

Verifikasi gambar Redis berjalan di dalam wadah Docker
Verifikasi gambar Redis berjalan di dalam wadah Docker

Selanjutnya, Anda harus membuat database karena Anda memerlukan cara untuk terhubung ke wadah Redis untuk menjalankan perintah di server. Untuk melakukannya, ketik: docker exec -it bash . Anda dapat menggunakan nama wadah dan ID wadah secara bergantian.

Terhubung ke instance container Redis
Terhubung ke instance container Redis.

Di wadah, gunakan CLI untuk menjalankan perintah. Perhatikan bahwa Redis menginstal host Docker secara otomatis. Untuk menggunakan Redis-CLI, ketik: redis-cli .

Gunakan Redis CLI untuk menjalankan perintah Redis
Gunakan Redis CLI untuk menjalankan perintah Redis

Ini menghubungkan Anda ke port default untuk Redis di host lokal. Ketik: ping , dan responsnya harus pong .

Tes untuk melihat apakah koneksi Redis aktif dan berjalan
Tes untuk melihat apakah koneksi Redis aktif dan berjalan

Selanjutnya, pilih database di dalam server Redis Anda dengan mengetikkan select . Meskipun basis data default adalah 0 , pilih db 1 .

Pilih database Redis tertentu
Pilih database Redis tertentu

Selanjutnya, masukkan data ke dalam database. Gunakan perintah SET Redis. Untuk melakukannya, ketik SET <key> <value> .

Misalnya:

 SET mykey "Hello"

Untuk mendapatkan kunci yang sama, ketik:

 get myKey
Masukkan dan ambil data dari Redis
Masukkan dan ambil data dari Redis

Untuk mendapatkan nilai kunci, jalankan get . Ini mengembalikan nilainya. Selanjutnya, pantau database Redis Anda dengan mengetik MONITOR .

Pantau basis data Redis
Pantau basis data Redis

Terakhir, hentikan server Redis dengan keluar dari CLI. Ketik exit dua kali untuk keluar dari CLI dan Redis.

Keluar dari Redis CLI
Keluar dari Redis CLI

Terakhir, hentikan wadah Redis agar tidak berjalan dengan mengetikkan docker stop .

Jalankan perintah untuk menghentikan wadah Docker agar tidak berjalan
Jalankan perintah untuk menghentikan wadah Docker agar tidak berjalan

Redis Dengan DevKinsta

DevKinsta memungkinkan Anda menghubungkan situs WordPress ke database Redis. Dengan DevKinsta, add-on Redis berfungsi mulus sebagai cache objek untuk menyimpan data di beberapa pemuatan halaman. Ini berarti bahwa dengan menggunakan add-on Redis, Anda dapat menggunakan cache untuk menggunakan kembali objek alih-alih terus-menerus menanyakan database MySQL.

Setelah mengunduh dan menyiapkan DevKinsta, instal Docker Desktop sebagai dependensi, yang digunakannya untuk membuat file lingkungan lokal di dalam wadah. Dengan pengaturan ini, Anda dapat mengonfigurasi add-on Redis di Devkinsta.

Oleh karena itu, add-on Redis untuk DevKinsta dapat digunakan sebagai sumber sekunder, mengurangi beban pada database primer, meningkatkan waktu respons, dan membuat aplikasi bekerja lebih cepat.

Ini berarti aplikasi menangani lebih banyak beban dan penskalaan secara efisien. Lihat posting ini untuk menggunakan plugin Redis dengan situs web Anda.

Redis + Docker = pasangan yang dibuat di surga! Inilah mengapa mengemas aplikasi Redis adalah cara yang harus dilakukan dan cara memanfaatkannya secara maksimal. Klik untuk menge-Tweet

Ringkasan

Ada banyak keuntungan menjalankan Redis di dalam container Docker. Ini menawarkan lingkungan kotak pasir untuk aplikasi Anda, jadi Anda tidak perlu lagi peduli dengan platform tempat Anda menerapkan aplikasi. Selain itu, Docker memungkinkan kemudahan penggunaan, fleksibilitas, dan keandalan yang tinggi.

Mengenai keamanan, Anda dapat memeriksa dan memindai kerentanan keamanan secara langsung dengan Synk, alat yang memberikan visibilitas ke dalam keamanan image Docker. Dan mengenai fleksibilitas, Docker berfungsi untuk sebagian besar sistem dan aplikasi operasi berbasis Unix dan Windows. Fleksibilitas ini berarti bahwa aplikasi atau layanan yang di-docker atau di-container selalu berjalan terlepas dari OS-nya.

Sangat mudah untuk menggunakan Docker dan add-on Redis dengan DevKinsta, yang menjalankan situs WordPress berbasis docker secara lokal saat Anda memulainya. Lihat add-on DevKinsta dan Redis untuk mendapatkan kekuatan Redis di Docker hari ini.