Amazon EC2'de docker kabını çalıştırıyorum. Şu anda Dockerfile'a AWS Kimlik Bilgilerini ekledim. Bunu yapmanın en iyi yolunu bana bildirir misiniz?AWS kimlik bilgilerini Docker kapsayıcısına iletmenin en iyi yolu hangisidir?
cevap
En iyi yol, IAM Rolünü kullanmaktır ve hiçbir şekilde kimlik bilgileriyle ilgilenmez. (bkz. http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html)
Kimlik bilgileri, http://169.254.169.254.....
numaralı telefondan alınabilir Bu özel bir IP adresi olduğundan, yalnızca EC2 örneklerinden erişilebilir.
Tüm modern AWS istemci kitaplıkları oradan nasıl kimlik bilgilerini getireceğini, yenilediğini ve kullanacağını "bilir". Yani çoğu durumda bunu bilmenize bile gerek yok. Sadece ec2'yi doğru IAM rolü ile çalıştırın ve iyi geçin. Eğer ortam değişkenleri olarak zamanında onları geçebilir Seçenek olarak
Sen terminalde printenv çalıştırarak bu ortam değişkenleri erişebilir
(yani docker run -e AWS_ACCESS_KEY_ID=xyz -e AWS_SECRET_ACCESS_KEY=aaa myimage
).
Üretimde güvenliği tehlikeye atmayan yerel geliştirme/test sırasında bunu yapmanın iyi bir yolu var mı? Bir görüntüyü tam olarak dağıtmadan çalıştığından emin olmak isterim. – honktronic
ortam değişkenleri ile gönderdiğim bir alternatif, dev/local ortamda iyi çalışıyor. – Vor
Bunun bir yazım hatası mı olduğunu merak ediyorum, ama 'AWS_SECRET_ACCESS_KEY' değil, 'AWS_SECRET_KEY' girmem gerekiyor, cevabınız çok yardımcı oldu. Teşekkür ederim. – Akavall
Docker kapsayıcılarına güvenlik kimlik bilgilerini geçirme mekanizmalarını tartışan çeşitli çevrimiçi makaleler vardır. Şimdiye kadar neye baktın? – larsks
Teşekkürler @larsks - bu konu için google'da ortaya çıkan ilk şey hakkında harika yorum – ferr
@ferr Şiddetli olup olmadığını anlayamıyorum, ancak belirli bir makale veya arama sonucuna yorum yapmıyordum . Sırlar ve Docker konusu aslında birçok kişi tarafından ayrıntılı olarak incelenen bir konu. – larsks