I want to build via the docker-compose
an image that uses my private key for cloning private git
repos.
More or less the compose becomes as fol
One way to do it that will work when building all the services and also with up
is to pass the SSH key data as an environnement variable like this:
env RSA=$(cat ~/.ssh/id_rsa) docker-compose build
And then you set the build args in the compose file like this:
myservice:
build:
context: .
args:
RSA: |-
${RSA}
You can use the same syntax with docker-compose build:
docker-compose build --build-arg RSA="$(cat ~/.ssh/id_rsa)"
Unfortunately, you can't use the build-args option with compose up or start... So you will need to build and then run using the --no-build
option
add ARGS
in your Dockerfile like
ARGS RSA
For it to be read upon build