通过 shell 脚本在 podman 的容器内设置环境变量



Usign podman容器,附带AlmaLinux。

在启动容器后,我需要设置一组环境变量。因此,我在容器中放入了一个脚本setenv.sh,其中包含以下内容:

#!/bin/sh
export MYVAR=value
echo $MYVAR

现在我正在运行容器:

$ podman run --rm -it -init almatest bash
% /opt/myapp/bin/setenv.sh
value
% echo $MYVAR
% env | grep MYVAR
%

我的变量在哪里?发生了什么事?

编辑:使用.source执行脚本可以防止环境变量消失。好吧,我想这就回答了我最初的问题。

我知道podman的-env,但不能使用它——容器是生产的测试环境,不会有podman。我需要从容器内部进行所有设置。

我知道哪里出了问题。

setup.sh是一个应该首先运行的脚本。我想了想,就像它是一个.bashrc,所以setup.sh中的export应该和.bashrc中的一样工作。这就是我错误的根源。

剧本的预期角色不是真实的。

所以setup.sh的调用应该通过source命令来完成。

相关内容

  • 没有找到相关文章

最新更新