Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Docker重新启动-保留环境变量_Java_Docker - Fatal编程技术网

Java Docker重新启动-保留环境变量

Java Docker重新启动-保留环境变量,java,docker,Java,Docker,我们有一个运行Java服务器的Docker容器。一些环境变量通过run命令传递给包含的(例如,docker run-e INSTANCE\u NAME=$INSTANCE\u ID[…])) 如果服务器可以访问INSTANCE_NAME环境变量,那么这将按预期工作。但是,如果停止容器并重新启动它,环境变量将丢失,Java服务器将无法找到实例名称。更奇怪的是,如果我们使用docker exec-it ID bash进入容器,则环境变量设置正确。因此,在重新启动容器时,环境变量的设置似乎与第一次运行

我们有一个运行Java服务器的Docker容器。一些环境变量通过run命令传递给包含的(例如,
docker run-e INSTANCE\u NAME=$INSTANCE\u ID[…])

如果服务器可以访问INSTANCE_NAME环境变量,那么这将按预期工作。但是,如果停止容器并重新启动它,环境变量将丢失,Java服务器将无法找到实例名称。更奇怪的是,如果我们使用
docker exec-it ID bash
进入容器,则环境变量设置正确。因此,在重新启动容器时,环境变量的设置似乎与第一次运行时使用
docker run
时的设置不同


有人知道这样的事吗?在我们这方面,这仅仅是一个糟糕的操作吗?

尽管在这篇文章中,我意外地更改了启动脚本,以便在重新启动后,Java程序在sudo下运行,具有一组不同的环境变量…

我没有看到这一点。最可能的错误是在脚本或java程序中。您可以用“env”命令替换“java”程序,并向问题提供信息。