How does one pass arguments into a dockerfile?
Lets say I have the dockerfile:
FROM ubuntu:14.04
MAINTAINER Karl Morrison
sudo do-something-here myVarHere
I would want to build the file as so for example:
docker build basickarl/my-image-example /directory/of/my/dockerfile "my string to be passed to myVarHere here!"
Docker has ARG
that you can use here
FROM ubuntu:14.04
MAINTAINER Karl Morrison
ARG myVarHere
RUN do-something-here myVarHere
And then build using --build-arg
:
docker build --build-arg myVarHere=value
We've had a similar requirement and came up with a relatively simple script that does exactly that:
We create a file called dockerfile_template
in which we use variables just like you describe. The script takes that file, performs string substitutions and copies it to dockerfile
(no _template) before calling docker build dockerfile
.
Works pretty good. Also very extensible for future requirements.
Update:
Scrap that. Use build-arg
(here)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With