关于设置容器环境变量的Kubernetes文档仅包括新环境变量的示例。
当我尝试扩展现有环境变量PATH时,此方法不起作用:
kind: Pod
apiVersion: v1
spec:
containers:
- name: blah
image: blah
env:
- name: PATH
value: "$PATH:/usr/local/nvidia/bin"
Run Code Online (Sandbox Code Playgroud)
创建的pod不断崩溃
BackOff Back-off restarting failed container
FailedSync Error syncing pod
Run Code Online (Sandbox Code Playgroud)
关于如何扩展PATH环境变量的任何建议?
如果您只需要为正在运行的命令声明此路径,则可以将其添加到containers下面的部分args
例子:
spec:
containers:
- name: blah
image: blah
args:
- PATH="$PATH:/usr/local/nvidia/bin" blah
Run Code Online (Sandbox Code Playgroud)
如果您没有在 yaml 中指定 args,则可能在 Dockerfile 中指定了 CMD,它将自动使用该命令运行容器。因此,您可以将以下内容添加到您的 Dockerfile 中。
CMD ["PATH=$PATH:/usr/local/nvidia/bin", "blah"]
Run Code Online (Sandbox Code Playgroud)
如果您希望将其添加到您的容器中,则必须将其添加到您正在使用的容器内的用户的 .profile 或 .bashrc 文件中。这可能涉及使用这些新文件创建一个新图像。
| 归档时间: |
|
| 查看次数: |
1800 次 |
| 最近记录: |