172 похожих чатов

Подскажите, пожалуйста. Если мне нужно разрабатывать архитектуру группы сайтов, которые

могут взаимодействовать между собой через POST или писать что-то в общие БД, так это я должен для каждого сайта делать контейнер? И для БД контейнер? И все их запускать и они будут в сети докера друг друга видеть?
Я просто не очень пока улавливаю. До этого я использовал Vagrant и просто настраивал виртуалку. Но теперь у меня нет пути назад и нужно переезжать на докер для локальной разработки.

9 ответов

17 просмотров

Если ты сейчас с нуля придумываешь архитектуру то лучше забудь про "писать что-то в общие БД" )) Взаимодействие только через rest, rpc или что больше нравится Я тебе больше скажу не "для сайта" делать контейнер, а вэб сервер отдельный контейнер, под бэк отдельный (например fpm если у тебя пыха), всякие кэшеры и прочие тоже все в отдельных контейнерах Поднимать бд в контейнере допустимо только если у тебя слабонагруженная небольшая база Запускать локально ты их будешь в докер компосе скорее всего и они будут друг друга видеть На проде естественно оркестратор

Timoffey-Cosman Автор вопроса
Alex
Если ты сейчас с нуля придумываешь архитектуру то ...

У меня есть на локальном диске папка с проектами. В каждой гит. И я их разрабатываю. При этом эта папка залинкована с папкой /var/www на виртуалке, где стоит LAMP. Сейчас мне надо схожий опыт получить с помощью докера. Я просто саму концепцию не до конца понимаю. То есть мне докер не для деплоя контейнеров нужен, а для запуска проектов, не особо прям нагруженных данными. Это куча легаси проектов, некоторые даже на пыхе 5.4

Timoffey Cosman
У меня есть на локальном диске папка с проектами. ...

Ну это легче легкого ) собираешь докер компос файл, под каждый проект выбираешь образ с нужной пыхой, и пробрасываешь локальную папку с проектом внутрь контейнера, все контейнеры в одной сети, туда же можешь xdebug прокидывать, очень удобно вести разработку

Timoffey-Cosman Автор вопроса
Alex
Ну это легче легкого ) собираешь докер компос файл...

спасибо. Потихоньку пойму что тут написано.

Timoffey-Cosman Автор вопроса
Alex
Ну это легче легкого ) собираешь докер компос файл...

а апач и мускуль они отдельными контейнерами, но при этом общие для всех php контейнеров?

Timoffey Cosman
а апач и мускуль они отдельными контейнерами, но п...

Нет, апач отдельный контейнер у каждого проекта свой, мускуль тоже Но вот только зачем использовать апач? ) Есть nginx, nginx unit, roadrunner, octane Не вижу смысла тащить такова монстра как апач

Timoffey-Cosman Автор вопроса
Alex
Нет, апач отдельный контейнер у каждого проекта св...

Ну потому что там самописный фреймворк, который работает с апачем. А если у каждого свой мускуль, то как два сайта подключаются к одной базе?

Timoffey Cosman
Ну потому что там самописный фреймворк, который ра...

Чтож там такова написать нужно было что бы так завязаться на апач? ) Я слабо в это верю ) Не нужно двум сайтам подключаться к одной базе зачем? У тебя автоматически база становиться узким местом, нагрузка на один сайт - висят все, делаешь миграцию с локом на один сайт - опять висят все Разделяй и властвуй

Timoffey Cosman
Ну потому что там самописный фреймворк, который ра...

Не слушай религиозных фанатиков. докер нужен, чтобы окружение проекта было максимально изолировано и легко переносилось. Если у тебя mysql для всех одинаковый, то либо держи его в отдельном контейнере, либо прямо на хосте - вполне нормальная практика. Так же на хосте (или в своем контейнере) у тебя может жить общий nginx, который раскидывает трафик на проекты. Проект, это апач с php и модулями, туда биндится папка проекта. Если есть дополнительные сервисы, то их лучше отдельными контейнерами. Композ тебе может помочь такую схему создавать/изменять достаточно просто, атом числе делать копии проектов. Нормально сделанная сеть в докере (через композ удобнее) позволит все на все врачи в разных контейнерах обращаться по имени контейнера и 80 порту (тогда nginx должен быть в контейнере) Короче, плюшек много, но надо понимать, что ты хочешь и как это работает

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта