如何在docker run启动容器时,取消 镜像中默认已经设置好的环境变量?

最近在测试一个容器中设置时区的问题,使用的镜像,默认带了 “TZ”这个环境变量,如下:

 

 

那么,我想要达到的一个什么效果呢?就是,在容器启动之后,不带,也就是没有这个TZ环境变量,以便用默认的方式来验证某个点。

 

那么,基于这样的目标,要怎么做呢?

 

找了一圈,比如docker run的时候,将TZ设置为空,像下面这样:

-e "TZ="

docker run --rm -it -e "TZ=" 5419324e2180 bash -c "env |grep TZ"

 

发现,容器启动后,TZ这个变量还是存在的,只是值是空:

 

 

那既然这样不行的话,还能怎么做呢,想了很久,发现都不起作用,那不如试试,就加个变量,没有=以及后面的值呢

 

好,那就试试看

 

直接:-e "TZ"

 

docker run --rm -it -e "TZ" 5419324e2180 bash -c "env |grep TZ"

 

 

哇,效果很神奇,果然是我想要的东西。

 

既然,没有在网上找到类似的,能有作用的文档,就在这里总结下。

 

posted @ 2022-07-19 11:07  Zhai_David  阅读(728)  评论(0编辑  收藏  举报