VicTHOR
@VicTHOR
(╮°-°)╮┳━━┳ ( ╯°□°)╯ ┻━━┻

Как использовать бинарники в контейнере? Как разрабатывать в контейнере?

Допустим я делаю docker-compose с сервисами: nginx, php-fpm, composer, nodejs..
В редакторе VS Code я могу подключиться к одному контейнеру (например php), но из него не могу использовать другие сервисы (composer, npm).. Это то же, что в интерактивном режиме запустить, но там рабочая среда подгружается.
Получается мне нужны эти все бинарники в одном контейнере, по-другому никак? А если они нужны в одном контейнере, то как их установить? Как в Dockerfile передавать версию сервиса, например, из doker-compose в секцию RUN, через которую я буду устанавливать эти php nodejs итд из какого-нибудь, условно, Ubuntu? Я попробовал указать в docker-compose environment, а в Dockerfile указал ${PHP_VERSION}, но в консоли прям так и распечатало ${PHP_VERSION}
Или что, правильно сколько сервисов, столько и окон открывать, столько терминалов открывать? В плане работы с редактором проще уж виртуалки копировать по необходимости, по-моему.
  • Вопрос задан
  • 35 просмотров
Решения вопроса 1
fox_12
@fox_12
Расставляю биты, управляю заряженными частицами
Ну контейнеры собственно для того и сделаны, чтобы изолировать системное окружение и не зависеть друг от друга в этом плане.

Возможно у вас что-то не так архитектурой, раз это создает проблемы.
nginx - это веб-сервер, который взаимодействует с вашим проектом, быстрее всего - на уровне сокетов
php-fpm, composer - я не сильно в теме php - но мне кажется это правильнее было бы объединить в одном контейнере...
nodejs - это другая история - и быстрее всего вы его используете для сборки фронта.
Все это - изолированные сущности. Для сборки фронта nginx и php не нужны, а для работы веб-сервера - nodejs не требуется....
И зачем вам все это требуется именно в контексте одного контейнера - не совсем понятно...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы