Вы не можете напрямую.Docker Compose запустит некоторое количество контейнеров, которые, как ожидается, будут работать более или менее автономно, и нет способа начать вводить команды в один из них.(Что бы вы сделали, если бы у вас было несколько контейнеров, которые вы хотели запустить и которые просто пытались запустить интерактивные bash
сеансы?)
Лучшим вариантом было бы настроить образ Docker таким образом, чтобы он по умолчаниюCMD запустил фактическую команду, которую вы пытались запустить.
FROM some_base_image:x.y
COPY ...
CMD myapp.sh
Тогда вы сможете запустить
docker run -d \
-p 9080:9080 \
-p 9443:9443 \
-p 2809:2809 \
-p 9043:9043 \
--name container_name \
myimage:latest
, и ваше приложение должно запуститься самостоятельно, успешно, безвмешательство пользователя.Это то, что вы можете перевести непосредственно в синтаксис Docker Compose, и оно будет работать как положено.