Выполнение команд Docker из одного контейнера в другой

#docker #docker-compose

Вопрос:

У меня есть два контейнера:

  1. Контейнер PHP
  2. Контейнер PostgreSQL

В моем PHP-скрипте я хочу использовать команду КОПИРОВАТЬ из Postgres. Однако это не может быть выполнено в PHP, так как эта команда является родной для Postgres.

В классических средах, а не в docker, я мог бы использовать php-функцию exec(команда PgSQL), и это позволило бы мне по-прежнему выполнять мои сценарии. Однако в среде docker, как это выполнить?

Заранее благодарю вас за вашу помощь

Комментарии:

1. Это невозможно. В первую очередь вам придется подключиться через SSH ко второму контейнеру из php-контейнера. Относитесь к контейнерам как к отдельным и независимым машинам.

2. Спасибо за разъяснение @emix

3. Вы должны иметь возможность использовать обычное соединение PostgreSQL. Вы не обязательно сможете выполнять массовую COPY загрузку, но вы можете выполнять обычные INSERT команды SQL для загрузки данных. Для этого вам не нужно ничего конкретного для докера или вызова подпроцесса.