我们有一个运行Java服务器的Docker容器。一些环境变量传递给 run 命令包含的内容(例如docker run -e INSTANCE_NAME=$INSTANCE_ID [...]
)
这可以按预期工作,服务器可以访问INSTANCE_NAME环境变量。但是,如果我们停止容器并重新启动它,环境变量就会丢失,Java服务器找不到INSTANCE_NAME。更奇怪的是,如果我们使用docker exec -it ID bash
输入容器,则会正确设置环境变量。因此,似乎在重新启动容器时,环境变量的设置与使用docker run
的第一次运行时的设置不同。
有人知道这样的事吗?这对我们来说只是一种不好的操纵吗?
答案 0 :(得分:0)
没关系这篇文章,我不小心更改了启动脚本,以便重启后,Java程序在sudo下运行,有一组不同的环境变量......