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

Docker Compose Ortam Değişkenleri (Geliştirici Eğitimi)

Farklı ortamlar arasında uygulamaların dağıtılması genellikle uyumluluk sorunlarına yol açar. Bir uygulama, bir geliştiricinin bilgisayarında mükemmel çalışabilir, ancak işletim sistemlerindeki farklar, bağımlılıklar veya yapılandırmalar nedeniyle testte veya üretimde sorunlarla karşılaşabilir. Docker, uygulamaları çalıştırmak için gereken her şeyi içeren kendine yeterli birimler halinde paketleyerek bu sorunu çözer, geliştirmeden üretime kadar her yerde tutarlı bir şekilde çalışmasını sağlar.

Docker Compose, ortam değişkenlerini kullanarak farklı yapılandırma ortamlarında yapılandırmayı kolaylaştırarak kapsayıcılı uygulamalara güçlü avantajlar getirir. Anahtar ayarların kod dışından yönetilmesine izin vererek, Docker Compose karmaşık uygulamaların dağıtımını daha basit ve güvenli hale getirir. Bu avantajlardan yararlanarak, bu makale ayrıca IronSecureDoc kullanarak doküman işlemede Docker Compose'un esnekliğinden nasıl faydalanabileceğinizi ve şifreleme ile redaksiyon yapılandırmalarını nasıl verimli bir şekilde yöneteceğinizi gösterecektir.

Docker Nedir?

Docker, kapsüllerle uygulamaların geliştirilmesini, dağıtımını ve çalıştırılmasını kolaylaştıran açık kaynaklı bir sistemdir. Kapsayıcılar; uygulama ve bağımlılıklarını içeren, her yerde aynı şekilde çalışabilen son derece hafif taşınabilir birimlerdir—geliştiricinin bilgisayarından üretim sunucularına kadar. Kapsayıcılar, geleneksel sanal makinelerle karşılaştırıldığında ana bilgisayarın işletim sistemi çekirdeğini paylaşır ve bu nedenle çok daha hızlı ve daha verimlidir.

Docker Compose Ortam Degiskenleri (Geliştirici Eğitimi): Sekil 1 - Docker web sayfasi

Bu, bu kapsayıcı setini yapmak ve sürdürmek için Docker görüntüleri şeklinde sanallaştırılmış bir şablon anlamına gelir. Ayrıca, platform Docker Hub içerir, bu şekilde bir kapsayıcı imaj deposudur. Bu teknolojinin güzelliği, ölçeklenebilirlik, taşınabilirlik ve verimlilik açısından kullanımı kolay olmasıdır, bu da birçok DevOps ve bulut tabanlı geliştirme iş akışında bu kadar popüler hale gelmesinin bir nedenidir.

Docker-Compose'ta Ortam Değişkenleri Nedir?

Docker'da, anahtar-değer çiftleri şeklinde bir ortam değişkeni kapsayıcılı uygulamada ayarları yapılandırmak için kullanılır. Bu tür değişkenler, uygulamanın davranışını kendisinin kodunu değiştirmeden kontrol etmek için yararlı olabilir, çünkü veritabanı kimlik bilgileri ve API anahtarları veya ortam modları (örneğin: geliştirme, üretim) gibi yapılandırmalar kolaylıkla değiştirilebilir.

Docker'da, bir ortam özelliği Dockerfile içinde, docker-compose.yml dosyasında veya çalışma zamanında docker çalıştırma komutunu kullanarak geçilebilir. Ortam değişkenlerinin kullanımıyla, Docker farklı ortamlar arasında tutarlı ve esnek uygulama dağıtımı sağlar ve şifreler ve API belirteçleri gibi hassas verileri daha etkili bir şekilde yönetir.

Docker'da Ortam Değişkenleri Nasıl Oluşturulur?

Docker'da ortam değişkenlerini tanımlamanın bir dizi yolu vardır. Docker Compose dosyasıyla, docker-compose.yml dosyasında, bir ortam dosyasında veya hatta çalışma zamanında, docker çalıştırma komutunu icra ederken tanımlanabilirler. Ana yapılandırma dosyasından ortam değişkenlerini ayrı tutmak, değişkenlerin daha kolay organize edilmesine yol açar! Değişkenlerinizi tanımlamak için uygulanabilecek çeşitli yöntemlerin bir listesini burada bulabilirsiniz.

Dockerfile İçinde Ortam Değişkenlerini Ayarlama

ENV talimatını kullanarak Dockerfile'da doğrudan ortam değişkenleri tanımlayabiliriz. Bu, Docker görüntünüzde değişkenler için varsayılan değerleri eklemek istiyorsanız yardımcı olabilir.

# Dockerfile
# Set the application environment
ENV APP_ENV=development
# Set the database URL
ENV DATABASE_URL=postgres://user:password@db:1234/mydev

Dockerfile içinde tanımlanan değerlerle ortam değişkenlerinin ayarlanması, kapsayıcının çalışma zamanında otomatik olarak uygulanacaktır.

Docker-Compose.yml İçinde Ortam Değişkenlerini Ayarlama

Docker-compose.yml içinde bir servis için ortam anahtar kelimesi yardımıyla ortam değişkenleri tanımlayabiliriz. Bu, birkaç hizmet yönetmek için Docker Compose kullandığınızda işe yarar.

version: '3.8'
services:
  myapp:
    image: myapp:latest
    environment:
      - APP_ENV=development
      - DATABASE_URL=postgres://user:password@db:1234/mydev
version: '3.8'
services:
  myapp:
    image: myapp:latest
    environment:
      - APP_ENV=development
      - DATABASE_URL=postgres://user:password@db:1234/mydev
YAML

Çalışma Zamanında Ortam Değişkenlerini Ayarlama

Bir kapsayıcı çalıştırırken, -e bayrağını ve docker run komutunu kullanarak ortam değişkenlerini belirtebiliriz. Bu, muhtemelen Dockerfile'a eklemek istemeyeceğiniz geçici ve dinamik değerler için iyidir.

docker run -e APP_ENV=development -e DATABASE_URL=postgres://user:password@db:1234/mydev myapp:latest
docker run -e APP_ENV=development -e DATABASE_URL=postgres://user:password@db:1234/mydev myapp:latest
SHELL

Ortam Dosyalarını (.

Ortam degiskenlerini .env gibi bir dosyada saklayabiliriz ve bunlari Docker konteynerlerinize yukleyebiliriz. Docker Compose'ta env_file yönergesi ile ona referans vereceğiz.

# .env file
APP_ENV=production
DATABASE_URL=postgres://user:password@db:1234/mydev
# .env file
APP_ENV=production
DATABASE_URL=postgres://user:password@db:1234/mydev
SHELL

Env dosyalarının yardımıyla, yapılandırma dosyalarının dışında ortam değişkenleriyle birden fazla dosyayı yönetebiliriz.

IronSecureDoc Nedir?

IronSecureDoc Docker için, geliştiricilere kapsayıcıya alınmış uygulamalarına kolayca güvenli belge işleme yeteneği eklemelerine olanak tanır. Docker öğrendikten sonra, ASP.NET Core uygulamanızı, dağıtımı ve ölçeklendirmeyi kolaylaştıran, homojen bir ortamda IronSecureDoc ile kapsülleyebilirsiniz. Bunun için, ASP.NET Core uygulamanızın yapımını orkestra eden, IronSecureDoc kütüphanesi ve muhtemelen işleri çalıştırmak için gerekli diğer yükleme betikleri veya yapılandırmaları ile bir Dockerfile oluşturacaksınız.

Docker Compose Ortam Degiskenleri (Geliştirici Eğitimi): Sekil 2 - IronSecureDoc web sayfasi

Bunun yanı sıra, hizmet bağımlılıklarını ve ortam değişkenlerini ve eşlenmiş bağlantı noktalarını belirten bir docker-compose.yml dosyası içerir. Bu, uygulamanızın geliştirme veya üretim sırasında kullanılandan başka bir ortamda verimli ve etkili bir şekilde çalışabilmesini sağlamak için belge güvenliği görevlerini çok daha fazla erişilebilir kılar. Docker durumunda olduğu gibi IronSecureDoc'un uygun yükleme ve yapılandırması, kapasitelerini tam olarak gerçekleştirmek için gereklidir: belge şifreleme, redaksiyon vb.

IronSecureDoc'un Anahtar Özellikleri

IronSecureDoc, PDF güvenliği ve belge yönetimi için bir dizi güçlü özellik sunar:

  • Şifreleme: Belge gizliliğini korumak için parola tabanlı güvenlikle 128 veya 256 bit şifreleme sağlar.
  • Redaksiyon: Gizlilik standartlarını ve düzenlemeleri karşılamak için kişisel kimlik bilgileri gibi hassas bilgileri kaldırır.
  • Dijital İmza: Belgenin özgünlüğünü sağlamak için dijital imza ve noter tasdiki .pfx veya .p12 sertifikaları ile desteklenir.
  • REST API: Esnek API, diğer yazılım ve iş akışlarıyla kesintisiz entegrasyon sağlar.
  • Docker Entegrasyonu: Docker için yerel destek, bulut tabanlı veya yerinde uygulamalar için dağıtım ve ölçeklendirmeyi basitleştirir.

Bu özellikler, IronSecureDoc'u, hassas belgelerle çalışan sektörler için, örneğin hukuk, sağlık hizmetleri ve finans için mükemmel bir seçim haline getirir.

IronSecureDoc'un Yüklenmesi ve Çalıştırılması

Adım 1

IronSecureDoc'u yüklemek için, terminal penceresi veya Komut İstemcisi'nde, depodan IronSecureDoc Docker görüntüsünü almak için aşağıdaki komutu çalıştırın.

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Docker Compose Ortam Degiskenleri (Geliştirici Eğitimi): Sekil 3 - IronSecureDoc imajini almak icin konsol çıktısı

Adım 2

IronSecureDoc görüntüsü indirildikten sonra, Docker kapsayıcısında görüntüyü çalıştırmak için aşağıdaki docker-compose komutunu 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 Compose Ortam Degiskenleri (Geliştirici Eğitimi): Sekil 4 - IronSecureDoc imaji çalıştırıldığında konsol çıktısı

IronSoftware'un resmi deposunu çalıştırmak için docker kapsayıcısını kullanıyoruz. Yukarıda gösterilen komut satırı, aşağıda açıklanan birkaç parçaya ayrılmıştır.

Komut Açıklaması

  • docker container run - Bu komut, verilen imaji kullanarak yeni bir Docker konteyneri oluşturur ve başlatir.
  • --rm - Konteyner durduğunda hemen temizler. Herhangi bir işlemin tamamlanması sırasında kullanılmayan tüm kapsayıcıları kaldırır.
  • -p 8080:8080 - Konteynerin 8080 portunu yayinlayarak, makinadan http://localhost:8080 adresinden erişebilirsiniz.
  • -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> - Calisan konteynerde IronSecureDoc_LicenseKey adinda bir ortam degiskeni ayarlayarak IronSecureDoc'un lisansli özelliklerini açıp kullanabilirsiniz. <IRONSECUREDOC_LICENSE_KEY> ile gerçek anahtarınızı degiştirin.
  • -e ENVIRONMENT=Development - Ortam degiskeni Geliştirme olarak ayarlanmistir. Bu, konteynerin geliştirme modunda çalıştırılması gerektiği anlamına gelir. Normalde, bu konteyner test veya hata ayıklama durumları için kullanılır; bunun dışında, üretim dışı yapılandırmalardan farklılık göstermektedir.
  • -e HTTP_PORTS=8080 - Bu ortam degiskeni, konteynerin HTTP trafigi icin 8080 portunu açıp dinlemesi gerektigini belirtmek icin kullanilir. Bu belirli porttan geçerek konteyner içindeki hizmete erişimi sağlar.
  • ironsoftwareofficial/ironsecuredoc:latest - Bu Docker imajidir. Bu, IronSecureDoc için Docker kayıt defterinden en son sürümün kullanılacağını belirtir.

IronSecureDoc Konteyner

IronSecureDoc'un REST API'si, Docker'da başlatıldıktan sonra kullanıcıların belgeleri düzenlemesine, sertifikalandırmasına ve şifrelemesine izin verir. IronSecureDoc'u bir Docker konteynerinde başlattıktan sonra, API uç noktaları ve Swagger UI ile belgeler için bir bağlantı: http://localhost:8080/swagger/index.html.

Docker Compose Ortam Degiskenleri (Geliştirici Eğitimi): Sekil 5 - API uç noktaları ile etkileşimde bulunmanız için Swagger UI

Yukarıdaki örnekten, şifreleme için bir belge göndermek üzere IronSecureDoc API'ye bir POST isteği gönderebiliriz:

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

Bunu yaparak, IronSecureDoc belgeyi alacak ve düzgün bir şekilde şifreleyecektir.

Sonuç

Özetle, Docker Compose'un ortam değişkenleri, uygulamaların yapılandırmasını otomatik olarak uygulama kodundan ayırdığı için çok esnek ve verimli bir şekilde yapılandırılmasına olanak tanır. Dolayısıyla, geliştirme, test etme ve üretim gibi farklı ortamları yönetmek daha basittir, çünkü uygulamanın kodu yerine yalnızca API anahtarları, veritabanı kimlik bilgileri ve ayarları gibi değişkenler değiştirilir.

IronSecureDoc'u uygulamak için Docker Compose kullanılması, lisans bilgilerini güvenli bir şekilde yönetmek için, örneğin IronSecureDoc_LicenseKey gibi ortam değişkenlerini kullanır ve ayrıca geliştirme veya üretim olarak tercih edilen HTTP portlarını veya ortam modunu belirtmek için ortam değişkenleri kullanır. Kurulum için ortam değişkenlerini kullanmak, IronSecureDoc'u daha az dağınık ve ölçeklendirilmesi zor yapılandırmalarla dağıtmayı basit hale getirir ve güvenliği artırır.

Gelişmiş özellikler, IronSecureDoc'un geçerli bir lisansı ile erişilebilir hale gelir. Aracın uygulaması belirli kullanım koşullarına sıkı sıkıya bağlıdır. Ayrıca, herhangi bir düşünülebilir uygulama için PDF'lerle, metin tanıma ve barkodlarla çalışırken sağlam işlevsellikler sağlayarak geliştirme sürecini kolaylaştıracak ve hızlandıracak başka yüksek performanslı kütüphaneler de Iron Software kullanarak kullanabilirsiniz.

Docker Compose Ortam Degiskenleri (Geliştirici Eğitimi): Sekil 6 - IronSecureDoc lisanslama sayfası

Sıkça Sorulan Sorular

Docker Compose uygulama dağıtımını nasıl geliştirebilir?

Docker Compose, uygulama ayarlamalarını uygulama kodunu değiştirmeden kolay ölçeklendirme ve uyarlama sağlayarak yönetmek için ortam değişkenlerini kullanarak uygulama dağıtımını geliştirir.

Ortam değişkenleri Docker'da ne rol oynar?

Docker'da ortam değişkenleri, koddan bağımsız olarak uygulama ayarlarını yapılandıran anahtar-değer çiftleridir, bu da şifreler ve API anahtarları gibi hassas bilgilerin güvenli yönetimi sağlar.

IronSecureDoc'un güvenli belge işleme için Docker ile entegrasyonu nasıl çalışır?

IronSecureDoc, bir Docker görüntüsü sağlayarak Docker ile entegre olur ve Docker komutları kullanılarak çekilir ve çalıştırılır. Güvenli belge işleme özellikleri, dosyaların şifreleme, karartma ve dijital imzalama işlemleri ile yapılandırılır.

Docker Compose ile ortam değişkenlerini kullanmanın faydaları nelerdir?

Docker Compose'da ortam değişkenlerini kullanmak esnek yapılandırma yönetimi, uygulama kodu dışında hassas verilerin tutulmasıyla gelişmiş güvenlik sağlar ve farklı ortamlar arasında düzenli dağıtım süreçlerini sağlar.

IronSecureDoc'u Docker ortamında nasıl çalıştırabilirim?

docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=-e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest komutunu kullanarak gerekli ortam değişkenlerini belirterek Docker ortamında IronSecureDoc'u çalıştırabilirsiniz.

IronSecureDoc belge güvenliği için hangi özellikleri sağlar?

IronSecureDoc, belge şifreleme, karartma, dijital imzalama gibi özellikler sunar ve konteyner ortamında güvenli belge işlemleri için Docker ile sorunsuz entegrasyon sağlar.

Docker Compose kurulumunda ortam değişkenleri nasıl ayarlanır?

Ortam değişkenleri Docker Compose kullanarak bir docker-compose.yml dosyası, ortam dosyaları veya çalışma zamanında olan komutlar kullanılarak ayarlanabilir ve uygulama yapılandırmalarının yönetilmesinde esneklik ve güvenlik sağlar.

Docker dağıtımlarında yapılandırmayı koddan ayırmak neden önemlidir?

Ortam değişkenleri aracılığıyla yapılandırmayı koddan ayırmak, Docker dağıtımlarında güvenliği artırır, farklı ortamlarda yönetimi basitleştirir ve hassas bilgilerin açığa çıkma riskini azaltır.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku

Iron Destek Ekibi

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