Docker'da Redis Nasıl ve Neden Çalıştırılır?

Yayınlanan: 2023-05-02

Redis, yüksek düzeyde kullanılabilir bir bellek içi veritabanıdır. Diskte kalıcı anahtar/değer veri deposu, birden çok yüksek kullanılabilirlikli kullanım için idealdir.

Öte yandan Docker, uygulamaları ve hizmetleri kapsayıcı hale getirmek, ortamlarını izole etmek ve ayrı ayrı çalışmalarına izin vermek için kullanılan bir araçtır. Docker'ı gerekli tüm bağımlılıklar, yapılandırmalar, betikler vb. ile uygulamalar ve hizmetler için bir paket yöneticisi olarak kullanabilirsiniz. Dockerfile adlı bir betik, Docker kapsayıcısının içine yerleştirilir ve kapsayıcıyı tek bir varlık olarak dağıtmanıza olanak tanır.

Bu makale size bu iki açık kaynak teknolojisini etkin bir şekilde nasıl kullanacağınızı öğretiyor. Ayrıca Redis kümelerini Docker kapsayıcıları içinde çalıştırmanın neden hayati önem taşıdığına ve Redis kümelerini sanal makinelerde veya çıplak donanım sunucularında çalıştırmaya kıyasla bunu yapmanın avantaj ve faydalarına da değiniyor.

Redis'in Çeşitli Kullanımları

Redis'in çeşitli avantajları vardır. En popüler kullanımları şunları içerir:

  • Dağıtılmış, anahtar-değer veritabanı önbelleği
  • Mesaj komisyoncusu
  • Kalıcı nesne önbelleğe alma sunucusu

Ayrıca Redis, birden çok veri türünü ve yapısını destekleyerek uygulamalar için hem birincil hem de ikincil veritabanı katmanı olarak kullanıma uygun hale getirir. Ayrıca listeleri, akışları, karmaları, kümeleri vb. destekler.

Ancak, Redis'in faydalarını kapsayıcı hale getirerek daha da ileriye taşıyabilirsiniz.

Redis, bir konteynerin içinde en iyisidir! Redis ve Docker'ı etkili bir şekilde nasıl kullanacağınızı öğrenin ve Redis uygulamalarınızı konteynerleştirmenin avantajlarını ortaya çıkarın - hepsi bu gönderide ️ Tweet için Tıklayın

Redis, Bir Konteynerin İçinde En İyisidir

Redis, bir milyardan fazla indirme ile Docker kayıt defterindeki en popüler Docker görüntülerinden biridir. Redis uygulamalarını kapsayıcı hale getirmenin nedeni, en yaygın Redis kullanım durumları için Docker'ın avantajlarından ve topluluk desteğinden yararlanmaktır.

Redis Docker görüntüsü, net belgeler oluşturan ve sürdüren açık kaynaklı bir topluluğa sahiptir. Üstüne üstlük, Docker son derece güvenilirdir ve kolay kullanım ve esneklik sağlar.

Kullanım kolaylığı

Docker, kapsayıcıların içinde çalışan hem uygulamalar hem de hizmetler için ortamları izole eder. İzolasyon, Docker içinde Redis uygulamalarının geliştirilmesini ve çalıştırılmasını kolaylaştıran ana işletim sisteminden bağımsız olarak çalışan Redis görüntülerini paketleyebileceğiniz, oluşturabileceğiniz ve gönderebileceğiniz anlamına gelir. Ayrıca Docker Desktop, özellikle büyük ekipler için yararlı olan tutarlı bir yerel geliştirme ortamı kurmayı basitleştirir.

Güvenlik:

Bir kapsayıcı içinde Redis ile güvenlik açıklarını tarayabilirsiniz. Docker, Docker görüntülerinin güvenliğine görünürlük sağlayan bir araç olan Snyk'i kullanır. Docker kapsayıcılarını tarar ve bozuk görüntüler olması durumunda ayrıntılar ve düzeltme sağlar. Docker ayrıca, henüz deneysel olmasına rağmen, kapsayıcı görüntüleri oluştururken kullanılan tüm bağımlılıkları taramak için bir yazılım ürün reçetesi (SBOM) oluşturabilir.

Esneklik

Docker, çoğu Unix tabanlı ve Windows işletim sistemi ve uygulamasında kullanılabilir. Tüm sistemlerle çalışmasını sağlamak için yazılımı ortamından yalıtmak için kapsayıcıları kullandığınız için, Redis uygulamaları ve hizmetleri altyapıya rağmen her zaman çalışır.

Güvenilirlik

Docker, kapsayıcılı herhangi bir iş yükünü herhangi bir ortamda güvenilir bir şekilde çalıştırmanıza olanak tanır. Redis, Docker'da güvenilirdir, çünkü Docker kapları düzenli olarak kapsayıcı görüntüsünün anlık görüntülerini alır ve kötü veya bozuk bir veritabanı durumunda bu anlık görüntülere geri dönmenize olanak tanır. Redis veritabanı dosyasını içeren bir dizini kapsayıcının içine bağlayarak da bir Docker birimi oluşturabilirsiniz.

Bir Docker birimi, kapsayıcıyı her türlü kazara veri kaybına karşı korumaya yardımcı olur. Ancak, bir uyarı, Docker birimlerinin görüntü anlık görüntülerini içermemesidir. Redis veritabanı dosyanızdaki verileri periyodik olarak manuel olarak kaydetmeniz veya yedeklemeniz gerekir.

Docker ile Redis Nasıl Kullanılır

Redis mağazanızı bir Docker kapsayıcısının içine yerleştirmek için hedef ortamda Docker'a sahip olmanız gerekir. Aşağıdaki talimatlar Docker'ı Windows'a nasıl yükleyeceğinizi gösterir.

Unix veya Unix tabanlı bir işletim sistemi için Docker web sitesindeki bir kılavuzu takip edebilirsiniz. Yükleme ve yapılandırmadan sonra, Docker kapsayıcınızın içinde bir ağ oluşturabilirsiniz. Ardından Redis'i kurabilir ve bir veritabanı oluşturabilirsiniz. Son olarak Redis veritabanınız üzerinde işlemler gerçekleştirebilirsiniz.

Öncelikle işletim sisteminize Docker'ı kurun. İsteğe bağlı olarak Docker Hub'a gidin ve bir hesap oluşturun. Resimlerinizi oluşturmak ve yayınlamak için bir hesaba ihtiyacınız var.

Docker merkezi kayıt formu
Docker Hub'ı

Bir hesap oluşturduktan sonra, Docker Hub'da oturum açın ve işletim sisteminizin en son Docker Desktop sürümünü indirin.

İşletim sistemleri için seçenekler içeren Docker Desktop için indirme sayfası.
Liman işçisi indirme sayfası

Kurulum prosedüründen sonra, Docker Engine'in çalışmaya hazır olup olmadığını görmek için terminal pencerenize gidin ve aşağıdaki komutu girin:

 docker --version
Yüklü Docker sürümünü kontrol edin
Docker sürümü yüklü

Ardından şunu yazın: docker-compose --version .

Docker ile yüklenen Compose sürümünü kontrol edin
Docker ile yüklenen oluştur

Compose, uygulama hizmetlerini yapılandırmak için kullandığınız YAML dosyalarını kullanarak çok kapsayıcılı Docker uygulamalarını tanımlamaya ve çalıştırmaya yönelik bir araçtır.

Aşağıdaki kodu kullanarak Docker Engine'in çalışır durumda olduğunu doğrulamak için Dockerized Redis çalıştırabilirsiniz. Bu örnek, Redis görüntüsünü Docker Hub'dan çalıştırır ve onu my-redis-container olarak adlandırır.

 docker run --name my-redis-container -d redis
My-redis-container adlı Docker Hub'dan Redis görüntüsünü çalıştırın
Docker Hub'dan my-redis-container adlı Redis görüntüsü

Görüntüye yerel olarak sahip olmadığınız için Docker, Redis görüntüsünü Docker Hub'dan çeker.

Artık Redis görüntüsünü çektiğini doğrulamak için Docker Desktop'ı açabilirsiniz. Panoda, sol taraftaki panelde Görüntüler'e tıklayın.

Redis görüntünüzün çalışır durumda olduğunu ve Docker Desktop'tan çalıştığını doğrulayın
Docker Masaüstü

Artık bir ağ oluşturabilirsiniz. Docker sürücüsünün bir Docker ağı oluşturmak için köprüyü veya yer paylaşımlı yerleşik ağ sürücülerini kullandığını unutmayın. Ayrıca üçüncü taraf bir ağ sürücüsü yükleyebilir ve kullanabilirsiniz.

Aradaki fark, köprü ağlarının tek bir Docker Engine kurulumunda izole edilmiş olması, bindirme ağlarının ise her biri bir motor çalıştıran birden fazla Docker ana bilgisayarına yayılmasıdır.

Tip:

 docker network create -d bridge kinsta-demo-network
Köprü sürücüsü ile yeni bir Docker ağı oluşturun
Köprü sürücüsü ile Docker ağı

Varsayılan olarak herhangi bir sürücü belirtmezseniz Docker, Docker Engine'i yüklediğinizde köprü sürücüsünü otomatik olarak oluşturduğundan, yeni bir ağ oluşturmak için köprü sürücüsünü kullanır. Ancak, Docker run komutuyla bir Docker kapsayıcısı çalıştırırsanız bu ağı kullanmaz.

Artık bir ağınız olduğuna göre sıra Redis'i Docker kapsayıcısının içine yüklemekte. Bunu yapmak için şunu yazın: docker pull redis .

Redis görüntüsünü Docker Hub'dan çekin
Redis görüntüsünü Docker Hub'dan çekin

Redis görüntüsünün doğru yüklendiğini doğrulamak için aşağıdaki komutlardan birini çalıştırın:

 docker images
 docker image ls
Kullanıcı terminalindeki kullanılabilir Docker görüntülerini listeleyin
Kullanıcının terminalindeki kullanılabilir Docker görüntüleri


Ardından, Redis kapsayıcısını oluşturup başlatırsınız. Bunu yapmak için aşağıdaki komutu çalıştırın:
 docker run -it –name dev_kinsta_redis_container -d redis
Docker kapsayıcısını oluşturma ve çalıştırma
Docker konteyneri

Şimdi Redis'in kapsayıcıda çalıştığını doğrulayın. Bunu yapmak için şunu yazın: docker ps .

Redis'in bir kapsayıcıda çalışır durumda olduğunu doğrulayın
Redis'in bir kapsayıcıda çalışır durumda olduğunu doğrulayın

Artık Docker kapsayıcınızın çalışır durumda olduğunu onayladığınıza göre, kapsayıcıyı ağa ekleyebilirsiniz. Tür: docker network connect .

Oluşturulan liman işçisi ağına bir Docker konteyneri ekleyin
Oluşturulan liman işçisi ağına bir Docker konteyneri ekleyin

Her şeyin beklendiği gibi çalıştığı bir sonraki adım, Docker içinde çalışan Redis sunucunuzun bağlantıları kabul etmeye hazır olduğunu doğrulamaktır. Bunu yapmak için docker logs kullanın.

Redis görüntüsünün Docker kapsayıcısı içinde çalıştığını doğrulayın
Redis görüntüsünün Docker kapsayıcısı içinde çalıştığını doğrulayın

Ardından, sunucuda komutları çalıştırmak için Redis kapsayıcısına bağlanmak için bir yola ihtiyacınız olduğundan bir veritabanı oluşturmalısınız. Bunu yapmak için şunu yazın: docker exec -it bash . Kapsayıcı adını ve kapsayıcı kimliğini birbirinin yerine kullanabilirsiniz.

Redis kapsayıcı örneğine bağlanın
Redis kapsayıcı örneğine bağlanın.

Kapsayıcıda, komutları çalıştırmak için CLI'yi kullanın. Redis'in Docker ana bilgisayarlarını otomatik olarak yüklediğini unutmayın. Redis-CLI'yi kullanmak için şunu yazın: redis-cli .

Redis komutlarını çalıştırmak için Redis CLI'yi kullanın
Redis komutlarını çalıştırmak için Redis CLI'yi kullanın

Bu, sizi yerel ana bilgisayardaki Redis için varsayılan bağlantı noktasına bağlar. Yazın: ping ve yanıt pong olmalıdır.

Redis bağlantısının çalışır durumda olup olmadığını test edin
Redis bağlantısının çalışır durumda olup olmadığını test edin

Ardından, select yazarak Redis sunucunuz içinde bir veritabanı seçin. Varsayılan veritabanı 0 olsa da db 1 seçin.

Belirli bir Redis veritabanı seçin
Belirli bir Redis veritabanı seçin

Ardından, veritabanına veri ekleyin. Redis SET komutunu kullanın. Bunu yapmak için SET <key> <value> yazın.

Örneğin:

 SET mykey "Hello"

Aynı anahtarı almak için şunu yazın:

 get myKey
Redis'ten veri ekleme ve alma
Redis'ten veri ekleme ve alma

Anahtarın değerini almak için get çalıştırın. Bu, değeri döndürür. Ardından, MONITOR yazarak Redis veritabanınızı izleyin.

Redis veritabanını izleyin
Redis veritabanını izleyin

Son olarak, CLI'den çıkarak Redis sunucusunu durdurun. CLI ve Redis'ten çıkmak için iki kez exit yazın.

Redis CLI'dan çıkın
Redis CLI'dan çıkın

Son olarak, docker stop yazarak Redis kapsayıcısının çalışmasını durdurun.

Docker kapsayıcısının çalışmasını durdurmak için komutu yürütün
Docker kapsayıcısının çalışmasını durdurmak için komutu yürütün

DevKinsta ile Redis

DevKinsta, bir WordPress sitesini bir Redis veritabanına bağlamanıza izin verir. DevKinsta ile Redis eklentisi, birkaç sayfa yüklemesinde verileri sürdürmek için sorunsuz bir şekilde bir nesne önbelleği olarak çalışır. Bu, Redis eklentisini kullanarak MySQL veritabanını sürekli olarak sorgulamak yerine nesneleri yeniden kullanmak için önbelleği kullanabileceğiniz anlamına gelir.

DevKinsta'yı indirip kurduktan sonra, bir kapsayıcı içinde yerel ortam dosyaları oluşturmak için kullandığı Docker Desktop'ı bir bağımlılık olarak kurun. Bu kurulumla Redis eklentisini Devkinsta'da yapılandırabilirsiniz.

Bu nedenle, DevKinsta için Redis eklentisi ikincil bir kaynak olarak kullanılabilir, birincil veritabanı üzerindeki yükü azaltır, yanıt sürelerini artırır ve uygulamanın daha hızlı çalışmasını sağlar.

Bu, uygulamanın daha fazla yük işlemesi ve verimli bir şekilde ölçeklenmesi anlamına gelir. Web sitenizde Redis eklentisini kullanmak için bu gönderiye göz atın.

Redis + Docker = cennette yapılmış bir eşleşme! Redis uygulamasını kapsayıcı hale getirmenin neden ve bundan en iyi şekilde nasıl yararlanabileceğinizi burada bulabilirsiniz. Tweetlemek için tıklayın

Özet

Redis'i bir Docker kapsayıcısında çalıştırmanın birçok avantajı vardır. Uygulamalarınız için korumalı bir ortam sunar, böylece artık uygulamalarınızı dağıttığınız platformla ilgilenmenize gerek kalmaz. Ayrıca Docker, kullanım kolaylığı, esneklik ve yüksek güvenilirlik sağlar.

Güvenlikle ilgili olarak, Docker görüntülerinin güvenliğine görünürlük sağlayan bir araç olan Synk ile güvenlik açıklarını kontrol edebilir ve tarayabilirsiniz. Esneklikle ilgili olarak Docker, çoğu Unix tabanlı ve Windows işletim sistemi ve uygulamasında çalışır. Bu esneklik, dockerize veya kapsayıcılı uygulamaların veya hizmetlerin her zaman işletim sisteminden bağımsız olarak çalıştığı anlamına gelir.

Docker'ı ve Redis eklentisini, başlattığınızda yerleşik bir WordPress sitesini yerel olarak döndüren DevKinsta ile kullanmak kolaydır. Redis'in gücünü Docker'da bugün elde etmek için DevKinsta ve Redis eklentisine göz atın.