Задать вопрос
hostadmin
@hostadmin

Как из контейнера запустить команду в «соседнем» (docker-compose) контейнере?

Имеется, например, docker-compose в котором описаны три контейнера, например с именами nginx, php и cron.
Как можно из контейнера cron, выполнить команду на соседнем контейнере, например на контейнере nginx?

Из хоста всё понятно:
docker-compose exec nginx service nginx restart

А вот как сделать тоже самое из контейнера cron?
  • Вопрос задан
  • 1533 просмотра
Подписаться 1 Простой Комментировать
Решение пользователя Максим Кудрявцев К ответам на вопрос (3)
kumaxim
@kumaxim
Web-программист
Добавь в нужные тебе контейнеры sshd и, по необходимости, поключайте из одного контейнера в ssh в другой и выполняй что тебе там надо. Это самый правильный путь, на мой взгляд.

Еще можно в контейнер, из которого ты хочешь выполнять команды в других контейнерах, установить docker и прокинуть socket докера с хоста в контейнер. Побочный эффект тут в том, что твой контейнер вдруг баганет, у тебя может рухнить все остальные запущенные контейнеры на хостовой машине.
Ответ написан