У меня есть проект сайта, бэк и фронт. Хочу построить окружение через docker-compose, но не совсем понимаю, куда мне маунтить код с сайта. К каждому контейнеру? Например nginx, mysql, redis и тд. Или лучше собрать единый образ из всего нужного и окружения и маунтить к нему? Но, думаю, это не особо гибко управляется, при изменениях придётся каждый раз пересобирать образ (или есть другие способы?).
2) Если мне надо в скрипте делать изменения сразу в mysql и в redis, как к ним обращаться, если они в разных контейнерах? По именам контейнера, id, ip?
Объединчешь контейнеры в одну сеть и обращаешься по имени
В контейнер с нджинксом просто маунти код и настраивай конфиг.
Ну, весь смысл докера как раз в сборке контейнера. Хотя для разработки можно и маунтить.
Если я могу собрать образ из моего приложения, nginx и mysql, то для чего в таком случае использовать docker-compose?
Разные контейнеры, к ним маунтишь всё, что нужно 🤷♀ Я для себя сделал пару примеров-подсказок, глянь, может помогут: github.com/nelkor/docker-hints
Тебе нужны минимум 2 образа. Композ нужен только для удобства запуска. Все тоже самое можно сделать и без композа
Обсуждают сегодня