🍅Ťомат
Первое, за что топят коллеги - простота обновления того же рокетчата.
Mikhail
нинада
Чегойта?
🍅Ťомат
Самый простой - ставишь докер, и пытаешься поднять там то что тебе надо.
Уже в процессе. Только так и плохому научиться недолго
Никита
Уже в процессе. Только так и плохому научиться недолго
всегда тут спросить можно по спорным моментам
SeniorAnykey
Уже в процессе. Только так и плохому научиться недолго
Ну хз. Просто достаточно помнить что контейнер это стейтлесс сущность
SeniorAnykey
Потом осознать это
SeniorAnykey
И профит
🍅Ťомат
Ну хз. Просто достаточно помнить что контейнер это стейтлесс сущность
Ну допустим, на примере чата. По идее, разворачиваем монгу на хосте, чат в контейнере/рах, если надо - убил контейнер, поставил рядом свежий, дата остаётся в базе на хосте. Верно рассуждаю?
🍅Ťомат
Тогда не понимаю, как, например, разворачивать монгу в докере, как в некоторых гайдах. Контейнер же стейтлесс, куда данные лягут?
🍅Ťомат
Ровно туда куда положишь) могут и в контейнере остаться
Тогда я не совсем понимаю про stateless. Ладно, постараюсь раскурить по документации.
Никита
Тогда я не совсем понимаю про stateless. Ладно, постараюсь раскурить по документации.
контейнер это инструмент, видел неплохую аналогию, контейнер это молоток, которым забиваешь гвозди, а гвозди - данные. Хранишь ты данные на хосте или в волюме нет разницы, главное чтобы не в контейнере. Обновляешь контейнер, цепляешь к имеющимся данным и всё заводится
Никита
контейнер сам по себе простая сущность, только софт, все настройки через окружение, докерфайл, параметры запуска передаешь.
Ильдар
Anonymous
Как стартануть существующий остановленный контейнер со своей командой вместо стандартного entrypoint/cmd ? Команда docker start не позволяет переопределить дефолтный entrypoint/cmd
Anonymous
например, есть остановленный nginx контейнер. Я хочу запустить на нём bash, но я не хочу стартовать nginx и я не хочу создавать новый контейнер. Команда docker run -it nginx bash создаст новый контейнер из образа nginx — этого тоже не хочу.
Vladislav 👻
docker exec
Anonymous
docker exec выполняет команду в уже ЗАПУЩЕННОМ контенере. У меня контейнер остановленный.
Vladislav 👻
Но не в новом зато
Vladislav 👻
Нельзя войти в контейнер, который не запущен
Vladislav 👻
Можно его только посмотреть
Anonymous
мне не нужен новый. Хочу использовать уже готовый.
Anonymous
мне не нужно заходить в незапущенный контейнер
Anonymous
Ещё раз: Как стартануть существующий остановленный контейнер со своей командой
Vladislav 👻
Я написал
Anonymous
я не понял. Нельзя что ли bash запустить, не запуская стандарный CMD=nginx?
Sergey
Anonymous
Это долгая история... Скажем, с целью изучения того как работает докер. Просто не нашёл такую возможность и это кажется не понятным.
Vladislav 👻
Заменяя точку входа тем самым делается новый контейнер
Vladislav 👻
Что там изучать? Если надо изучить фс, то это можно вообще без старта руками или использовать какой-нибудь инструмент, например dive
Sergey
Что там изучать? Если надо изучить фс, то это можно вообще без старта руками или использовать какой-нибудь инструмент, например dive
я понял что он хочет он не хочет создавать виртуалку, он хочеть запустить баш как мини-виртуалку из from:ubuntu и в ней играться внутри
Vladislav 👻
Я задачу тоже не до конца понимаю
Anonymous
просто разобраться хотел почему docker run позволяет переопределить cmd/entry, а docker start нет, хотя docker exec позволяет запускать любую программу не создавая новый контейнер.
Viktor
Потому что это три разные команды для трех разных целей?
Vladislav 👻
Можно взять убунту и запустить в одном контейнере баш, а в другом zsh и это будут два разных контейнера
Anonymous
Точно два разных?
Vladislav 👻
А что, два одинаковых процесса?
Anonymous
Процесса два разных. Но контейнер один
Sergey
на
Vladislav 👻
Понятно, почитайте, что такое контейнер и чем он отличается от образа
Anonymous
Причем тут два разных контейнера. Мне надо bash и zhs в одном контейнере: docker run ubuntu bash docker exec 1234567890 zhs
Anonymous
И посередине вставит docker stop 1234567890
Ильдар
https://www.youtube.com/watch?v=hdVNKmru3LM
ещё классная лекция от CSC "Контейнерная виртуализация в Linux" https://open.compscicenter.ru/archive/virtualization-in-linux/
Vladislav 👻
Ох чувствую, плохому учите...
Anonymous
Надеюсь не пригодиться. Это я для понимания принципов работы спрашивал
Ильдар
Надеюсь не пригодиться. Это я для понимания принципов работы спрашивал
для понимания принципов работы выше два шикарных видео :)
Anonymous
Ну вот не зря спрашивал
Sergey
Petrovich
Всяко лучше чем приглашение на митап который давно прошёл
Viktor
Шапки ж все равно никто не читает :)
Sergey
значит тех, кто не прочитал можно на нее послать:)
Anonymous
Какой смысл не читать закреп, если в нем с большой долей вероятности ответ на твой вопрос
Viktor
90% оветов в документации, однако, но у людей спросить приятнее
S
Всем привет
S
Подскажите, что означают натсройки: networks: - frontend - backend
Andrey
например, есть остановленный nginx контейнер. Я хочу запустить на нём bash, но я не хочу стартовать nginx и я не хочу создавать новый контейнер. Команда docker run -it nginx bash создаст новый контейнер из образа nginx — этого тоже не хочу.
Команда это часть контейнера, её нельзя переопределить. Поэтому новый контейнер придётся сделать. Сначала сохраняешь старый контейнер в образ через docker commit, потом из этого образа запускаешь новый контейнер с нужной командой.
FreeUser
Всем привет) подскажите пожалуйста могу ли я свой образ поместить на maven и указать в докерфайле что-то типа такого: FROM maven:my_image? Я новичек если что))
Ильдар
10 "не делайте так в докере" https://developers.redhat.com/blog/2016/02/24/10-things-to-avoid-in-docker-containers/
Владимир
Товарищи, можно ли в docker-compose выбрать режим сети - host (чтобы встроиться в общую сеть) и раздать статичные IP контейнерам? В режиме bridge такое у меня получилось
Ильдар
зачем?)
Владимир
Короче дело такое: у меня БД находится на другом сервере и туда проброшен SSH-тунель по порту. Мне надо как-то из моего контейнера php дернуть через этот тунель базу
Владимир
Начитал, что так просто порт не прокинуть
Владимир
И надо делать network_mode: host
Ильдар
Да, понятно зачем host-mode. А IP зачем?
Владимир
Я использую такую конструкцию extra_hosts: - ${CRM_URL}:172.21.1.1 - ${API_URL}:172.21.1.1 , чтобы прокинуть запросы не через DNS + в nginx я проксирую по статичному IP
Ильдар
а теперь можешь просто по локалхосту обращаться
Владимир
Вот те раз
Ильдар
host-mode убирает сетевую изоляцию
Alex ZeroDub
Привет всем. Подскажите как сделать. Есть docker-compose, нужно чтобы контейнеры из него умели обращаться на локально запущенный сервис. Но ведь изнутри конейнера не видно 127.0.0.1? Как указать чтобы докер смотрел этот сервис на хосте