我希望能够SSH放入OpenShift容器内的容器中。
我确实知道,我可以简单地使用oc rsh
来做到这一点。但这是基于这样的假设:我将openshift cli安装在要从其ssh到容器的节点上。
但是我真正想要实现的是,从没有安装openshift cli的节点ssh到容器中。该节点与OpenShift位于同一网络上。该节点确实有权访问托管在容器上的Web应用程序(仅出于示例目的)。但是,我希望拥有ssh访问权限,而不是通过web访问。
有什么方法可以实现?
答案 0 :(得分:2)
与在真实或虚拟化硬件上运行整个操作系统的服务器不同,容器只不过是由以下几个内核功能封装的单个Linux进程:CGroups,Namespacing和SELinux。如果愿意的话,这是一个“幻想”过程。
在容器中打开shell会话与打开到服务器的ssh连接并不完全相同。将shell打开到容器中需要启动一个shell进程,并将其分配给与该容器进程在同一主机上的相同cgroup和名称空间,然后向您呈现该会话,这不是ssh设计的目的。
使用oc exec,kubectl exec,podman exec或docker exec cli命令在正在运行的容器中打开Shell会话是连接运行中的方法容器。