我已经使用jwilders nginx反向代理设置了一个多个Docker容器的服务器。 当您运行容器时,可以设置VIRTUAL_HOST环境变量。 我一直在尝试找到一种在启动容器后更新这些变量的方法。
这里发布了一篇解决方案:
您只需停止docker守护程序并更改容器配置即可
/var/lib/docker/containers/[container-id]/config.json
虽然需要停止docker守护程序,但我希望不必采取这种方式。
另一个这里的解决方案,使用docker commit来保存实例信息:
话虽如此,您可以通过将其提交为新图像来保留容器中的文件系统更改;
尽管这似乎有些夸张,仅仅是为了更改一个环境变量。
$ docker run -it --name=foobar alpine sh $ docker commit foobar mynewimage $ docker rm foobar $ docker run -it --name=foobar mynewimage sh
我查看了 docker update,但那主要是用于重新配置容器资源。
当然,如果没有其他选择,我会使用上述任何一种方法,但我想知道是否有人找到其他解决方案?
ENV abc 123
或ENV abc=123 def=456
,然后重新构建/重启。 - user2915097