Bash 如何在现有docker容器中永久设置环境变量?
我有一个现有的docker容器,我想在该容器中设置一个环境变量。这可以在Docker中完成吗?如果是这样,如何在进程启动时设置环境变量?环境变量通常由子进程继承。在Docker中,可以使用Dockerfile中的Bash 如何在现有docker容器中永久设置环境变量?,bash,docker,Bash,Docker,我有一个现有的docker容器,我想在该容器中设置一个环境变量。这可以在Docker中完成吗?如果是这样,如何在进程启动时设置环境变量?环境变量通常由子进程继承。在Docker中,可以使用Dockerfile中的ENV命令在图像上设置环境变量。当您调用docker run-e…或在docker compose.yml中定义环境时,您可以配置用于启动容器的默认环境。因此,在容器启动之前,有很多方法可以做到这一点 但是,一旦启动,就无法在正在运行的进程上更改它,Docker也没有命令来更改容器的默认
ENV
命令在图像上设置环境变量。当您调用docker run-e…
或在docker compose.yml中定义环境时,您可以配置用于启动容器的默认环境。因此,在容器启动之前,有很多方法可以做到这一点
但是,一旦启动,就无法在正在运行的进程上更改它,Docker也没有命令来更改容器的默认环境,这只能影响执行进程或重新启动容器(如果它们添加了该功能)。因此,最好的选择是停止并删除现有容器,然后使用正确的环境重新创建它。环境也可以在入口点或启动脚本(如果存在)中设置。因此,您希望将环境变量添加到已运行的容器中docker create
或docker run
?