Bir Dockerfile'a argümanlar nasıl iletilir?


120

DockerfileBir rpm yüklemek için a içinde RUN komutunu kullanıyorum

RUN yum -y install samplerpm-2.3

Ancak, "2.3" değerini bağımsız değişken olarak iletmek istiyorum. RUN talimatım şöyle görünmeli:

RUN yum -y install samplerpm-$arg

nerede $arg=2.3

Yanıtlar:


153

Sen arıyorsun --build-argve ARGtalimatı. Bunlar Docker 1.9'dan itibaren yenidir. Https://docs.docker.com/engine/reference/builder/#arg adresine göz atın . Bu eklemek sağlayacak ARG argkadar Dockerfileve daha sonra inşa docker build --build-arg arg=2.3 ..


1
Tüm bunları yaptıktan sonra bir hata alıyorum ** Paket örnekleyicisi yok pm- $ arg mevcut. ** Görünüşe göre 2.3'ün argüman değeri değiştirilmiyor.
meallhour

1
Muhtemelen oluşturmak için Dockerfilekullanılan, komutuyla yeni bir soru oluşturmanız ve ona yardımcı olmam için hata yapmanız gerekecektir .
Andy Shinn

2
bunun yerine env değişkenleri ne olacak?
Alexander Mills
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.