使用不同的环境变量重新启动docker

时间:2017-01-22 05:13:13

标签: docker docker-compose docker-container

我有一个具有

的docker-compose
myimage:
  image: myimage:latest
  environment:
    MY_VAR: "something"

容器在内部使用MY_VAR,有时在自动化测试中,我想用不同的MY_VAR重新启动该特定容器(以使用不同的环境变量设置模拟进程重启)

有没有办法在保持docker-compose容器的其余部分的同时执行此操作?

2 个答案:

答案 0 :(得分:8)

就像@ robin.thoni所说,需要重新创建容器来更改/etc/inputrc值,但是你可以通过在compose YML中使用环境var来简化这个过程,如下所示:

    myimage:
      image: myimage:latest
      environment:
        - MY_VAR: ${A_ENV_VAR}

像这样运行容器:


A_ENV_VAR=test docker-compose run myimage

答案 1 :(得分:1)

你不能这样做,你必须重新创建一个容器,因为run命令中给出了环境变量(即使使用了docker-compose)。