Altbilgi içeriğine atla
IRONSECUREDOC KULLANıMı

Docker Container Listesi (Geliştiriciler için Nasıl Çalışır)

Bugünün hızlı tempolu yazılım geliştirme ortamında, uygulamaların verimli bir şekilde dağıtılması ve yönetilmesi kritik öneme sahiptir. Docker, hafif, taşınabilir konteynerler içinde uygulamaların dağıtımını otomatikleştiren önde gelen bir çözüm olarak ortaya çıktı. Docker, bir uygulamayı ve bağımlılıklarını kapsülleyerek yerel geliştirmeden üretime kadar farklı ortamlarda tutarlı performansı garanti eder.

Bu konteynerleştirme teknolojisi, ölçeklenebilirliği ve kaynak yönetimini basitleştirir, böylece modern DevOps uygulamalarında ve sürekli entegrasyon/sürekli dağıtım (CI/CD) boru hatlarında önemli bir araç haline gelir. Bu makalede, Docker'ın temellerini, konteyner kavramını ve uygulamaların dağıtım sürecini nasıl geliştirdiğini keşfedeceğiz ve Docker'ı ölçeklenebilir çözümler için kullanan bir belge güvenlik aracı olan IronSecureDoc'a yakından bakacağız.

Docker nedir?

Docker, hafif, taşınabilir konteynerler içinde uygulamaların dağıtımını otomatikleştiren açık kaynaklı bir ortamdır. Konteynerler, uygulamayı tüm bağımlı paketlerle paketler, böylece uygulamanın nerede çalıştığına bakılmaksızın tam olarak aynı şekilde çalışır; ister bir geliştiricinin dizüstü bilgisayarında, ister bir test sunucusunda, isterse bir üretim ortamında olsun. Docker, uygulamaları altında yatan altyapıdan izole ederek aynı konak üzerinde paralel olarak birden fazla konteyner çalıştırılmasına olanak tanıyarak verimlilik sağlar.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 1 - Bir Docker konteyneri kullanım durumu

Bu, ölçeklenebilirliğini ve kaynak yönetimini basitleştirir; Docker ile, geliştirmeden üretime iş akışı daha kolay ve düzene girmiş hale gelir, bu yüzden modern DevOps ve CI/CD boru hatlarında önemli bir rol oynar.

Konteyner Nedir?

Bir konteyner, bir yazılımı çalıştırmak için gerekli olan her şeyi içeren, kod ve çalışma zamanı, sistem araçları, kütüphaneler ve ayarlarla birlikte kendi kendine yeten, hafif, çalıştırılabilir bir paketdir. Bu, ana bilgisayardan ve diğer konteynerlerden izole bir ortamdır ancak aynı işletim sistemi çekirdeğini paylaşır, bu da geleneksel sanal makinelerle karşılaştırıldığında çok daha verimli ve hızlı hale getirir.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 2 - Bir Docker konteynerinin görselleştirilmesi

Docker konteynerleri taşınabilirlik için tasarlanmıştır. Eğer bir yazılım geliştiricisi bunu geliştirme için dizüstü bilgisayarında çalıştırabiliyorsa ve bir testçi bunu test için bir sunucuda çalıştırabiliyorsa, ideal olarak bir bulut ortamı veya üretim ortamı aynı konteyner yığınını çalıştırabilir. Taşınabilirlik, konteynerlerin izolasyonu ve ölçeklenebilirliği ile birleştiğinde, Docker'ı modern yazılım konuşlandırması ve CI/CD boru hatları için vazgeçilmez bir araç yapar.

Konteynerler, geliştiricilerin uygulamaların her nerede dağıtılacak olursa olsun aynı çalışacağını sağlamak açısından Docker'ın işlevselliğinin tam merkezindedir.

Docker Konteynerlerini Listeleme

Docker kullanılarak gerçekleştireceğiniz işlemler arasında konteynerleri listelemek bulunur, böylece durumlarını izleyebilir veya hatta daha iyi yönetebilirsiniz. Böyle bir eylem için Docker komutları vardır ve bu, sadece çalışan konteynerleri mi yoksa durmuş olanlar da dahil tüm konteynerleri mi yazdırmak istediğinize bağlıdır.

Docker konteynerlerini nasıl listeleyebileceğiniz aşağıda açıklanmıştır:

1. Çalışan Konteynerleri Listeleme

Yalnızca şu anda çalışan konteynerleri listelemek için aşağıdaki docker ps komutunu kullanın:

docker ps
docker ps
SHELL

Bu komut, aşağıdaki sütunları verecektir:

  • Konteyner ID'si: Bir konteyner için benzersiz bir kimlik.
  • Image: Konteynerin oluşturulduğu Docker imajı.
  • Command: Konteynerin çalıştırdığı komut.
  • Created: Konteynerin ne kadar süre önce oluşturulduğu.
  • Status: Konteynerin çalışıp çalışmadığı veya çıktığı.
  • Ports: Sunucunun portu ile konteynerin portu arasındaki eşleme.
  • Names: Konteynere atanan isim, otomatik olarak veya manuel olarak ayarlanabilir.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 3 - 'docker ps' komut çıktısının bir örneği

Daha yeni 'docker container ls' komutunu da kullanabilirsiniz, ancak biz 'docker ps' komut sözdizimine odaklanacağız.

2. Tüm Konteynerleri Listeleme (Çalışan ve Duran)

Tüm çalışan ve durdurulmuş konteynerleri göstermek için, -a bayrağını kullanın:

docker ps -a
docker ps -a
SHELL

Bu komut, docker ps ile aynı sütunları döndürür ancak durdurulmuş veya çıkmış konteynerler veya tüm oluşturulmuş konteynerler dahil edilir. Bu komut, duran konteynerleri yönetmek veya çökmiş ya da çıkmış konteynerlerdeki sorunları giderirken kullanışlıdır.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 4 - 'docker ps -a' komut çıktısı

3. Sadece Konteyner ID'lerini Listeleme

Yalnızca konteyner kimliklerini göstermeniz gerekiyorsa (ki bu, betik yazma veya otomatikleştirme eylemleri için kullanışlı olabilir), -q bayrağını kullanabilirsiniz:

docker ps -q
docker ps -q
SHELL

docker ps -q komutu, yalnızca çalışan konteyner kimliklerini yazdıracak ve diğer Docker komutlarına toplu işlemler için kolayca kimlikleri aktarabilmenizi sağlayacaktır.

Örneğin, docker stop ile birleştirerek her çalışan konteyneri durdurabilirsiniz:

docker stop $(docker ps -q)
docker stop $(docker ps -q)
SHELL

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 5 - 'docker ps -q' komut çıktısı

4. Konteynerler Listesini Filtreleme

Belirtilen kriterlere göre docker ps komutunun çıktısını --filter seçeneğini kullanarak filtreleyebilirsiniz. Sadece durumu ile konteynerleri listelemek için bir örnek aşağıdadır:

docker ps -f "status=exited"
docker ps -f "status=exited"
SHELL

Bu, sadece çıkış yapmış konteynerleri listeleyecektir. Görüntü adı, etiketler veya portlar veya adlar gibi diğer özel kriterlerle filtreleyebilirsiniz.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 6 - Filtreleme komutunun çıktısı

5. Çıktıyı Biçimlendirme

Okunabilirlik veya özel çıktı için, Docker sonucu --format seçeneğini kullanarak biçimlendirmenize olanak tanır. Örneğin, sadece konteynerin kimliğini ve adını listelemek için şunu kullanabilirsiniz:

docker ps --format "{{.ID}}: {{.Names}}"
docker ps --format "{{.ID}}: {{.Names}}"
SHELL

Bu, özellikle Docker konteyner yönetimini script'lerde veya araçlarda kullandığınızda belirli bilgi parçalarına ihtiyaç duyduğunuzda faydalıdır.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 7 - Biçimlendirilmiş docker ps komut çıktısı

IronSecureDoc nedir?

IronSecureDoc, şifreleme, redaksiyon ve dijital imzalama özellikleri sunarak hassas dosyaları korumak için tasarlanmış bir belge güvenlik aracıdır. Kullanıcıların PDF belgelerini güvence altına almasını, sahip oldukları kişisel ve gizli verileri kontrol etmelerini sağlar. Bazı özellikler arasında parola koruması, PDF/A gibi standartlara uyumluluk ve dijital sertifikasyon bulunur, bu da genellikle yasal, sağlık veya finans alanlarında kullanılır. Yazılım, farklı iş akışlarına son derece entegre olabilen bir REST API olarak mevcuttur ve ölçeklenebilir, bulut dostu güvenlik çözümleri için Docker'da dağıtılabilir.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 8 - IronSecureDoc web sayfası

IronSecureDoc'un Özellikleri

IronSecureDoc, PDF güvenliği yönetimi ve belge yönetimi konusunda oldukça etkileyici. Özellikleri arasında şifreleme, redaksiyon ve dijital imza bulunur:

  • Şifreleme: 128 veya 256-bit şifreleme ile PDF belgelerini, veri gizliliğini sağlamak için parola tabanlı güvenlik ile şifreler.
  • Redaksiyon: Bu özellik, kişisel tanımlayıcılar veya diğer hassas bilgileri kaldırarak mahremiyet standartlarına ve düzenlemelerine uyumu sağlar.
  • Dijital İmza: Bu, .pfx veya .p12 destekleyen PDF'lerin noter tasdiki ile dijital imzalama özelliğine sahiptir, bu da belgenin özgünlüğünü garanti eder.
  • Uyumluluk: Arşivleme ve erişilebilirlik için yararlı olan PDF/A ve PDF/UA standartlarıyla uyumluluğu sağlar.
  • REST API: Diğer yazılımlar ve iş akışları ile entegrasyon sağlayan esnek bir REST API'si vardır.
  • Belge Versiyon Kontrolü: Daha iyi belge kontrolü için tüm değişikliklerin izlenmesini ve versiyon yönetimi sağlar.
  • Docker Entegrasyonu: Docker ile yerel entegrasyon, ölçeklenebilir bulut veya yerel ortamlarda daha kolay dağıtıma olanak tanır.

Bu özellikler, hukuk, sağlık hizmetleri veya finans sektörlerinde hassas belgelerle çalışmak için güçlü bir araç haline getirir.

IronSecureDoc'u Docker Konteynerine Çekme

Bir terminal penceresi veya Komut İstemi açın ve IronSecureDoc Docker görüntüsünü depodan çekmek için bu komutu kullanın:

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 9 - IronSecureDoc Docker imajını çekerken konsol çıktısı

Bir Konteynerden IronSecureDoc Çalıştırma

Bir konteyner görüntüyü çektiğine göre, çalışan bir IronSecureDoc adlı konteyneri başlatmak için başka bir komut çalıştırabiliriz. Port eşleme için -p bayrağını veya durduktan sonra konteynerleri silmek için --rm bayrağını kullanabiliriz:

docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
SHELL

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 10 - Bir konteynerden IronSecureDoc çalıştırmanın konsol çıktısı

Docker Konteynırı ile IronSecureDoc Kullanımı

IronSecureDoc, Docker içinde yüklendikten ve başlatıldıktan sonra REST API'sini kullanarak belgeleri redaktetme, onaylama ve şifreleme için kullanılabilir. IronSecureDoc'u Docker konteynerinde başlattığınızda API son noktaları ve Swagger UI ile dokümantasyon için bu bağlantıyı ziyaret edin: http://localhost:8080/swagger/index.html.

Docker Container Listesi (Geliştiriciler İçin Nasıl Çalışır): Şekil 11 - API son noktaları etkileşim için Swagger UI

Örneğin, bir belgeyi şifreleme için göndermek üzere IronSecureDoc API'sine bir POST isteği yapabilirsiniz:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
SHELL

Bu istek hücreyi IronSecureDoc'a gönderir ve istenen şifreleme uygulanır.

Sonuç

'docker ps' ve 'docker ps -a' gibi komutlar, çalışan ve durmuş konteynerlerin etkili bir şekilde izlenmesini, bakımını ve yönetimini sağlayarak Docker konteynerlerinin yönetimini verimli hale getirir. Böyle komutlar, geliştiricilerin ve sistem yöneticilerinin farklı ortamlarda konteynerleri filtrelemesini, biçimlendirmesini ve manipüle etmesini sağlarken etkili uygulama yönetimine olanak tanır.

IronSecureDoc, Docker konteyneri olarak şifreleme, redaksiyon ve dijital imza gibi belge güvenlik özelliklerinin dağıtımını ve ölçeklenmesini kolaylaştırır, farklı platformlarda performansın ve güvenliğin korunmasını garanti eder. IronSecureDoc lisansı hakkında daha fazla bilgi için buraya tıklayın. Iron Software ayrıca, geliştirme projenizi yükseltmek için çeşitli ürünler sunar ve bunlar hakkında buradan daha fazla bilgi edinebilirsiniz.

Sıkça Sorulan Sorular

Docker uygulama dağıtımını nasıl otomatikleştirir?

Docker, uygulamaları tüm bağımlılıklarıyla birlikte hafif, taşınabilir kapsayıcılarda paketleyerek uygulama dağıtımını otomatikleştirir. Bu, uygulamanın farklı ortamlarda, geliştirmeden üretime, tutarlı bir performans sergilemesini garanti eder.

Modern yazılım geliştirmede neden kapsayıcılar önemlidir?

Kapsayıcılar, bir uygulama için gerekli tüm bağımlılıkları içeren kendi kendine yeten bir ortam sundukları için kritik öneme sahiptir. Bu izolasyon, tutarlı performans sunar ve modern DevOps uygulamaları için ölçeklenebilirlik ve kaynak yönetimini kolaylaştırır, bu da gereklidir.

Çalışan Docker kapsayıcılarını nasıl listeleyebilirim?

Çalışan Docker kapsayıcılarını docker ps komutunu kullanarak listeleyebilirsiniz. Bu komut, Kapsayıcı ID'si, Görüntü, Durum gibi ayrıntılar sağlar.

Durdurulmuş olanlar da dahil olmak üzere tüm Docker kapsayıcılarını hangi komut listeler?

Durdurulmuş olanlar da dahil olmak üzere tüm Docker kapsayıcılarını listelemek için docker ps -a komutunu kullanın. Bu, Docker kapsayıcılarını yönetmek ve sorun gidermekte faydalıdır.

Belirli kriterlere göre Docker kapsayıcılarını nasıl filtrelerim?

Docker kapsayıcı listelerini --filter seçeneği ile filtreleyebilirsiniz. Örneğin, docker ps -f "status=exited", yalnızca çıkış yapmış kapsayıcıları gösterir.

Docker, belge güvenliği uygulamaları için ne gibi faydalar sağlar?

IronSecureDoc gibi belge güvenliği uygulamaları için Docker kullanmak, ölçeklenebilirlik ve esneklik sağlar. Şifreleme, karartma ve dijital imzalama gibi özelliklerin güvenli ve ölçeklenebilir bir ortamda sorunsuz bir şekilde entegrasyonunu ve dağıtımını sağlar.

Belge güvenliği aracı için Docker görüntüsünü nasıl çekebilirim?

Belge güvenliği aracı için Docker görüntüsünü terminalde docker pull ironsoftwareofficial/ironsecuredoc komutunu kullanarak çekebilirsiniz.

Belge güvenliği aracını Docker ortamları için uygun hale getiren özellikler nelerdir?

IronSecureDoc gibi bir belge güvenliği aracı, Docker ortamları için uygun olan PDF şifreleme, karartma, dijital imzalama ve entegrasyon için bir REST API gibi özellikler içerir, bunların tümü kapsayıcılar içinde verimli bir şekilde dağıtılabilir ve yönetilebilir.

Docker komut çıktılarının okunabilirliğini artırmak için nasıl özelleştirebilirim?

Çıktıları özelleştirmek için Docker komutlarıyla --format seçeneğini kullanabilirsiniz. Örneğin, docker ps --format "{{.ID}}: {{.Names}}", yalnızca kapsayıcının ID ve adını gösterecektir.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara