来自shell的docker-compose args

时间:2017-11-20 11:04:20

标签: docker docker-compose dockerfile

我想通过docker-compose使用我的私钥来构建私有git repos的图片。

或多或少的构成如下:

   myservice:
     build:
      context: .
      args:
        RSA:  ~/.ssh/id_rsa

上述内容不起作用,以下内容:

   myservice:
     build:
      context: .
      args:
        RSA: $(cat ~/.ssh/id_rsa)

docker build命令工作正常,但是以

的形式
docker build --build-args RSA=$(cat ~/.ssh/id_rsa) -t myservice:latest

2 个答案:

答案 0 :(得分:3)

您可以使用与docker-compose build相同的语法:

docker-compose build --build-args RSA=$(cat ~/.ssh/id_rsa)

不幸的是,你无法使用build-args选项进行组合或启动...所以你需要构建然后使用--no-build选项运行

答案 1 :(得分:-3)

在Dockerfile中添加ARGS,如

ARGS RSA

在构建时阅读它