标签:var during 初始 建议 环境变量 bsp sla The tran
在写Dockerfile时, ENV和ARG,包括.env都是很容易弄混的概念。让我们对其进行区分。
和docker-compose.yml配合使用。并不和Dockerfile一起使用
在Dockerfile中使用,当环境变量很多,可食用该参数,指定对应的变量文件。
在Dockerfile中使用,仅仅在build docker image的过程中(包括CMD和ENTRYPOINT)有效,在image被创建和container启动之后,无效。
如果你在Dockerfile中使用了ARG但并未给定初始值,则在运行docker build的时候未指定该ARG变量,则会失败。
虽然其在container启动后不再生效,但是使用‘docker history’可以查看到。所以,敏感数据不建议使用ARG.
设置ARG和使用ARG编译image, 实例如下:
在Dockerfile中使用,在build docker imag的过程中有效,在image被创建和container启动后作为环境变量依旧也有效,并且可以重写覆盖。printenv可查看其值。
设置ENV和使用env,实例如下
有时候,ARG和ENV一起使用,实例如下图:
标签:var during 初始 建议 环境变量 bsp sla The tran
原文地址:https://www.cnblogs.com/ExMan/p/13039623.html