доступ / передача переменных среды openshift pod в скриптовых вызовах «oc rsh» - PullRequest
0 голосов
/ 11 июня 2019

Может быть, некоторые из вас, профессионалы openshift / docker, могут помочь мне с этим. Заранее извиняюсь за мое форматирование, я на мобильном и не имею доступа к точным кодам ошибок прямо сейчас. Я могу предоставить более подробный ввод / stderr позже, если это необходимо.

Некоторые подробности об окружающей среде:

-функционирующий модуль OC, работающий с одним контейнером postgresql v9.6.

-CentOS7 host

-Centos7 локальная машина

-bash 4.2 shell (как в контейнере, так и на моей локальной коробке)

Моя цель - использовать однострочную команду bash для rsh в контейнер postgresql и выполнить следующую команду, чтобы напечатать указанные базы данных контейнеров на мой локальный терминал. как то так:

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

Результат: rsh не может найти нужную библиотеку, код ошибки 126

Проблема, с которой я сталкиваюсь, заключается в том, что при выполнении этого одного вкладыша rsh не видит переменные окружения целевого модуля. Это означает, что он не может найти вспомогательные библиотеки, которые нужны команде psql. Если я не предоставил полный путь, как показано в моем примере, он даже не может найти саму команду psql.

Досадно, что запуск следующей строки приводит к выводу всех переменных среды pods (включая те, которые мне нужны для 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

...