0

也许你们中的一些 openshift/docker 专业人士可以帮助我解决这个问题。提前为我的格式道歉,我在移动设备上,现在无法访问确切的错误代码。如果需要,我可以稍后提供更详细的输入/标准错误。

关于环境的一些细节:

-运行单个 postgresql v9.6 容器的正常运行的 OC pod。

-CentOS7主机

-Centos7 本地机

-bash 4.2 shell(在容器中和我的本地盒子中)

我的目标是使用单行 bash 命令 rsh 进入 postgresql 容器,然后运行以下命令将所述容器数据库打印到我的本地终端。像这样的东西:

[root@mybox ~]$ oc rsh pod-name /path/to/command/executable/psql -l

结果:rsh 找不到所需的库,错误代码 126

我遇到的问题是,在执行这一行时,rsh 看不到目标 pod 的环境变量。这意味着它找不到 psql 命令需要的支持库。如果我不提供示例中所示的完整路径,它甚至无法找到 psql 命令本身。

烦人的是,运行以下一行代码会将所有 pod 环境变量(包括我需要的 psql 环境变量)打印到我的本地终端,因此它们应该可以以某种方式访问​​。

[root@mybox ~]$ oc rsh pod-name env

由于这是作为自动化过程的一部分执行的,因此简单的交互式 rsh 方法(如下所述)不是一种选择。

[root@mybox ~]$ oc rsh pod-name

sh-4.2$ psql -l

(pod 愉快地在远程终端打印数据库信息)

我已经尝试执行定义 psql 环境变量的脚本,然后链接所需的命令,但是在尝试执行 env 脚本时我被拒绝了权限。

[root@mybox ~]$ oc rsh pod-name /path/to/env/define/script && psql -l

权限被拒绝,rsh 错误代码 127

4

0 回答 0