我可以向docker container

时间:2018-03-17 00:20:01

标签: docker dockerfile

有些方法可以使用docker run--env选项使用-e命令传递dockerfile中声明的环境变量。

E.g。假设您使用的是MAC或Linux,那么您可以定义一个shell变量,如下所示:

export MyEnvVar=SomeValue

然后将此值传递给dockerfile中定义的环境变量。

docker run --name "MyContainerName" -e MyEnvVar Container_Image_Name 为此,你必须在dockerfile中有一个语句,如下所示:

ENV MyEnvVar=${MyEnvVar}

但是,我不想在dockerfile中定义任何变量,而是在使用docker run或其他方式创建容器实例时添加新的环境键/值。

那么有没有办法使用docker run或其他方法将新环境变量添加到docker容器中而不在dockerfile中声明该环境变量?

1 个答案:

答案 0 :(得分:4)

在运行时添加环境变量并不需要在ENV

中定义Dockerfile
$ docker run -e TEST=OHYEAH busybox sh -c 'echo $TEST'
OHYEAH

正如@djmm187所述,--env-file也会起作用。