Max
Всем добрый вечер, с докером не работал, знаю о нем мало. Хотел узнать у благородных донов: может ли быть один контейнер с бд, другой с бекендом и между ними натянута какая-нибудь связь? Спасибо
Max
Я про условный кейс
Max
Конечно. Можно порты пробросить между контейрами.
Alex
контейнеры линкуются друг с другом
Alex
каждый делает одну задачу.
Max
Например через docker-compose удобно, или через консоль
Alex
Конечно. Можно порты пробросить между контейрами.
ну там не порты прокидываются а контейнеры линкуются.
Alex
Ну да, докер вроде разворачивает свою сеть там. Прописываешь что куда должно идти и вперед.
Max
Да, так более корректно)
Max
Ага, спасибо, значит изначально я правильно понял аннотацию. Пойду какой-нибудь pet project выращу.
Alex
Я вот хочу свой продакшн проект написать на микросервисах. Хрен знает как я это сделаю (первый раз), но буду стараться не монолитить.
Alex
а зачем?
Alex
микросервисы в целом дороже чем монолит на начальных этапах
Alex
имхо конечно, но стоит начать с монолита и когда (если) проект вырастет то распилить.
Alex
Писать изначально на микросервисах избыточно и дороже
Alex
Плюс, как правило изначально вся картина не видна, что и как будет работать.
Alex
соответственно если в монолите - не подошло - выкинул код, то в микросервисе нужно сначала создать приложение, понять что не ок и выкинуть, потом отредактировать другие микросервисы чтобы они его не юзали
Alex
Для этого есть этап проектирования. Но в твоих словах есть правда :)
Alex
На этапе проектирование некоторые затыки часто не видны.
Alex
Они вскрываются только после непосредственно разработки или в продакшене.
Alex
Имхо конечно, в начале монолит быстрее разрабатывается, а с увеличением кодовой базы - значительно хуже.
Sergey
> Для этого есть этап проектирования. мы в 90-х опять? Никто не проектирует апфронт всю систему.
Sergey
я знаю не так много компаний которые могут себе позволить микросервисы в самом начале (и которым это реально нужно)
Sergey
в основном же на микросервисы переходят с течением времени потому что подругому никак. У меня на текущем проекте вроде как монолит, но вот уже две подсистемы надо реализовать и к сожалению или счастью они будут как отдельные сервисы. Просто потому что так надо.
Sergey
а на “этапе проектирования” необхоимости такой небыло
Alex
микросервисы это модно
Alex
У тебя микросервис? да ты крут
Виталий
#whois всем привет - где я работаю мне запрещают говорить; - специалист в вебдеве , в основном бекенд, ещё немного пишу мобильные апликухи ( по фану), ещё у меня Linux на десктопе, борода от этого не растёт быстрее, врут; Могу давать рандомные советы/рекомендации/руководства быть может чатик оценит, шутить могу смешно; Мне кажется что я не знаю всех миллиона ключей cli докера, возможно увижу новые в чатике, удивлюсь; Я из солнечного Краснодара; Чатик просто нашёл протосковать что знал что он может быть. Именно в телеграмм. Всё.
Александр
Эт я про место раоты
Виталий
Да Гугл все даст со временем, название мало что скажет, главное что там веб делают.
Ruslan
Разве про Линукс на декстопе до сих пор можно хвастаться?))
Alexander
Всем, привет! Подскажите, кто как работает с логами от контейнеров Сейчас есть приложение крутится под nginx+mod_passenger Имеем логи nginx_access,nginx_error, app.log (RubyOnRails) Как их правильно собрать?
Eugene
http://www.fluentd.org/architecture
Igor
очень-очень заманчивая штука, я так понял что это для хранения и агенты- а для отображения ui ставить или что?
Igor
я пока на https://papertrailapp.com/ сижу, но надо свое =)
Roman
docker logs + logspout + ELK
Alexander
я правильно понимаю что все логи нужно отправить в stdout а дальше прикручивать варианты чере log-driver
Roman
Ага все верно
Alex
Слушайте, если я делаю docker -v dir:/etc/dir imagename то содержимое dir будет мапится в контейнерный /etc/dir? У меня оно не работает.
Alexander
Попробуй dir - полный путь от корня
Denis
docker -v $(pwd)/dir:/etc/dir imagename
Alex
Ок, попробую, спасибо!
Dmi3y
А ещё у людей бывает SELinux, и тогда надо писать -v dir:/etc/dir:Z
Alex
Не, у меня не настолько параноидально.
Alex
Так, с этим разобрались. Теперь вопрос: в контейнере висит монга которая настроена на bind 127.0.0.1. Как с хоста к этому подключится через mongo 172.17.0.2:28018?
Denis
Ключ -p
Alex
У тебя docker-compose?
Alex
а
Denis
Почитайте ман
Alex
Ключ -p
Висит -p
Alex
В том-то и дело.
Alex
Монга отказывается подключаться
Alex
Ты должен задать контейнеру название хоста и в других контейнерах подключаться по названию хоста с портом.
Alex
а не по айпи.
Denis
bind 0.0.0.0 тогда монге
Alex
Я с докер клиентом не работал, обычно юзал docker-compose.
Alex
Вроде бы когда ты линкуешь один контейнер к другому ты этому контейнеру назначаешь имя для того к которому линкуешь
Alex
Т.е есть контейнер A, это mysql например
Alex
есть контейнер B который юзает mysql. Ты при запуске B указываешь линковку на контейнер A и задаешь название которое будет использоваться внутри контейнера B
Denis
Контейнер слушает только 127.0.0.1 . Дело скорее всего в этом.
Denis
А вы идете фактически на 172...
Alex
docker run --hostname?
Зайти внутрь контейнера который использует монгу и сделай запрос вручную
Alex
А вы идете фактически на 172...
С bind 127.0.0.1 на монге при mongo 127.0.0.1:28018 он выдавал ошибку про закрытый сокет
Alex
Теперь с 0.0.0.0 оно работает
Alex
Потому что обращаясь к mongohost вы обращаетесь к 172.* на котором монга не сидит
Леннарт Zh 🕊
В Яндексе Кинопоиск на php ;D
он щяз называется Яндекс.FAIL
Sander
Всем привет, еще вопрос по Docker, многие используют ее только для тестироваия или для разработки у себя на локальном компьютере, ну и зачастую для них это замена для vagrant. Многие просто считают что это не нужность, что есть LXC для таких случиев, и вот сейчас сами создатели LXC контейнеризации (ядро Docker LXDC), выпустили свою более высокоуровневую систему LXD. Может не стоит использовать сторонние Docker, rocket и другие, если есть родная система?
Viet
А как же Docker Hub и прочие плюшки развитой экосистемы?)
Sander
ну наверное использовать другие способы бекапа системы
Sander
у LXD, вроде тоже есть свое хранилище образов, но там это не так удобно как у Docker
Sander
LXD, что-то более новое и крутое чем контейнеры …
Dmitrii
Это просто рест к lxc