是否可以从Kubernetes的Pod中在主机上运行命令。
例如,我有一个运行python图像的吊舱,该图像可计算os的大小。但是它使用的命令在pod内部而不是主机中运行。是否可以从pod在主机上运行命令。
答案 0 :(得分:2)
实际上,在pod中运行的命令是在主机上运行的。它是一个容器(Docker),而不是虚拟机。 这意味着当您在Pod中执行某些操作(例如检索RAM的大小)时,通常会返回整个计算机的RAM。 如果您想获得“操作系统的大小”,并表示它是硬盘驱动器,则需要安装硬盘驱动器以对其进行计数。
如果您的实际问题是想要做某事,而这是普通容器所不允许的,则可以在 privileged 模式下运行pod或配置您真正需要的任何东西。 您需要像这样(从文档中获取)向您的Pod添加安全上下文:
apiVersion: v1
kind: Pod
metadata:
name: security-context-demo
spec:
securityContext:
runAsUser: 1000
fsGroup: 2000
volumes:
- name: sec-ctx-vol
emptyDir: {}
containers:
- name: sec-ctx-demo
image: gcr.io/google-samples/node-hello:1.0
volumeMounts:
- name: sec-ctx-vol
mountPath: /data/demo
securityContext:
privileged: true
来源: