Bagaimana cara menyampaikan argumen ke Dockerfile?


120

Saya menggunakan instruksi RUN dalam a Dockerfileuntuk menginstal sebuah rpm

RUN yum -y install samplerpm-2.3

Namun, saya ingin meneruskan nilai "2.3" sebagai argumen. Instruksi RUN saya akan terlihat seperti ini:

RUN yum -y install samplerpm-$arg

dimana $arg=2.3

Jawaban:


153

Anda mencari --build-argdan ARGinstruksi. Ini baru pada Docker 1.9. Lihat https://docs.docker.com/engine/reference/builder/#arg . Ini akan memungkinkan Anda untuk menambahkan ARG argke Dockerfiledan kemudian membangun dengan docker build --build-arg arg=2.3 ..


1
Setelah melakukan semua itu, saya mendapatkan kesalahan ** Tidak ada paket samplerpm- $ arg tersedia. ** Tampaknya nilai argumen 2,3 tidak diganti.
meallhour

1
Anda mungkin perlu membuat pertanyaan baru dengan Dockerfile, perintah yang digunakan untuk membangun, dan kesalahan untuk membantu saya.
Andy Shinn

2
bagaimana dengan variabel env?
Alexander Mills
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.