Aleksandr
Restarts all stopped and running services. If you make changes to your docker-compose.yml configuration these changes will not be reflected after running this command.
Aleksandr
например такой нюанс
Aleksandr
всех нюансов не запомнишь, поэтому надо знать что такое бывает, и проверять id контейнеров либо построить флоу так, чтобы везде было прописано —no-cache и rm
Anna
/
Alex
@zelenin Кодировку определеть не удалось. Не определяется. Я конвертировал строку в hex значения и детерминировать исходную строку не удалось
Alex
@zelenin это подтверждает твою реплику касательно кодировки приходящих строк. Но меня по прежнему волнует вопрос, почему я могу эти значения до записи в файл вывести в stdout и нормально прочесть? :)
Aleksandr
хз
Николай
Есть запущенный докер контейнер. Как получить доступ к его башу? docker container exec ... или docker container attach ... ?
Anonymous
а ID можешь смотреть через docker ps
Nklya
баша может и не быть, и тогда пробовать sh
Николай
Сделал docker container exec -it ID /bin/bash А как теперь выйти из терминала докер-контейенера в мой обычный терминал, что бы не прибить случайно контейенр?
CrusaderX
Просто выйти)
Andrey
exit из консоли и все
Николай
спасибо этому чату
Nklya
Ctrl+d, из вима случайно выйти не надо заодно?))
Alexander
Ctrl+d, из вима случайно выйти не надо заодно?))
Из вима выйти нельзя, только ребут :)
Anonymous
Из вима выйти нельзя, только ребут :)
А я прошаренней был) Открывал второй терминал и killall vim.
Nklya
https://twitter.com/dchest/status/921426120213520385
Pavel
Спс мил человек!!!
Дмитрий
А я прошаренней был) Открывал второй терминал и killall vim.
То есть для сохранения мозгов до :w хватило, а для :q нет?)
Gleb
К выше поднятой теме с docker exec. Какие есть аргументы против влазинья руками в контейнер на проде и наложения там на скорую руку фиксов вместо выкатитки нового "релиза"? Я за то, что бы это вообще запретить делать, но у меня только аргумент по типу "без CI, без тестов но с docker commit && docker push && update-all". Что можете подсказать?
Vladimir
Аргумент простой как лом: следующий разработчик накатит апдейт через минуту после завершения правок и все изменения полетят к черту. Контейнеры рекомендуется держать as code, потому что в любой момент может быть пересобрана вся конфигурация.
Vladimir
Да, но тут пока что нет CI (точнее есть только для тестирования), весь деплой руками 2-3 человек, сидящих в одной комнате.
Надеюсь, что автоматика для сборки "руками" все-такие есть, но, хорошо, даже тут есть решение: накатайте простой скрипт, который в один пулит с репозитория свежак, собирает и запускает сборку на серверной машине.
Vladimir
Микро CI собрать на коленке не сложно. Достаточно иметь под рукой свободную машину (в идеале) или создать общего юзера, чтобы к нему по SSH коннектится и стрелять командами на сборку.
Gleb
Надеюсь, что автоматика для сборки "руками" все-такие есть, но, хорошо, даже тут есть решение: накатайте простой скрипт, который в один пулит с репозитория свежак, собирает и запускает сборку на серверной машине.
Мм... Ну на GitLab CI собирается docker image, по нему прогоняются разные тесты и он кладётся в registry. Оттуда его забирают на прод руками и так же руками запускают (точнее магией на ssh файликах либо скоро будет ansible). Проблема в том, что чуваки привыкли ходить на прод, там в vim'е фигачить зелёнку и делать pm2 restart.
Gleb
Я вообще в этой компании только пару месяцев и после моего прошлого проекта у меня впечатление, что я откатился лет эдтак на 10! Тут вот только что внедрили GitLab, до этого был bare git на сервере, куда кто угодно пушал код без ревью... 😢
Vladimir
Тогда я бы дал им возможность не делать руками обновление на прод и, возможно, остальное уйдет.
Vladimir
Vladimir
То есть, ради чего они это делают?
Gleb
Да, релиз раз в неделю примерно, но учитывая качество кодовой базы и почти полное отсутсвие тестов (есть только у маленькой части нового фронта на React и планируется внедрение, но пока ничего нет), 3-4 раза за неделю летят фиксы, после которых вообще прод руками чинят.
Gleb
Вообще идеальным решением всех этих детских проблем было бы запихнуть пацанов в облако и сказать: "Добро пожаловать в светлое будущее, теперь у вас не 2 сервера, а 200".
Vladimir
Вообще идеальным решением всех этих детских проблем было бы запихнуть пацанов в облако и сказать: "Добро пожаловать в светлое будущее, теперь у вас не 2 сервера, а 200".
Я делал staging, который поднимал конкретную ветку для разработчиков или полноценную копию production. Это спасало от правок уже по факту деплоя (не на живую, конечно).
Gleb
Вообще у меня есть вариант один. Пушить контейнер в registry сразу после билда, а не после тестов и потом тут же его вытягивать на прод. По идее это не больше минуты займёт.
Gleb
Я делал staging, который поднимал конкретную ветку для разработчиков или полноценную копию production. Это спасало от правок уже по факту деплоя (не на живую, конечно).
Будет такое, просто у всех руки тянуться к продакшену, а административным ресурсом я и так часто пользуюсь, блокируя MR из-за говнокода
Vladimir
Будет такое, просто у всех руки тянуться к продакшену, а административным ресурсом я и так часто пользуюсь, блокируя MR из-за говнокода
Jenkins, отдельный пайплайн и распределение ролей. Я понимаю, что звучит просто, а на деле может оказаться работой на неделю, но это хорошее вложение времени.
Gleb
Jenkins, отдельный пайплайн и распределение ролей. Я понимаю, что звучит просто, а на деле может оказаться работой на неделю, но это хорошее вложение времени.
Ну да, так и планируется, просто было бы класно найти аргумент вроде: "Если залезть руками к контейнер и наживую поправить код, то может зависнуть docker daemon".
Vladimir
Ну да, так и планируется, просто было бы класно найти аргумент вроде: "Если залезть руками к контейнер и наживую поправить код, то может зависнуть docker daemon".
Так оно в принципе не разумно. Ощущение, что разработчики считают контейнеры полноценными машинами (виртуальными), но это же не так.
Gleb
Так оно в принципе не разумно. Ощущение, что разработчики считают контейнеры полноценными машинами (виртуальными), но это же не так.
Тут код назад переодически вешали mongodb, делая селекты без индексов, так что до стадии принятия контейнеризации им ещё далеко) А ещё у нас куча чего кладётся и используется из global, есть 3 папки helper и ещё больше классов и вообще отсутвующая архитектура как понятие в проекте.
Bogdan (SirEdvin)
То есть быстрее не будет, это иллюзия
Gleb
Ну, короче, понятно, опять прийдётся давить авторитетом =)
Alex
Народ, а можно как то из докера вызвать скрипт с хоста чтобы тот выполнялся в контексте хоста, а не контейнера?
Aleksandr
а тож ssh host команда!
Gleb
NodeJS
Но проблемы не с ним связанны. Ошибки такие, которые могут совершать ну разве что студенты на первом проекте, а тут сидят пацаны с сеньёрским опытом. В итоге я в 18 лет хожу и всех учу 😅
Alex
а тож ssh host команда!
Вообще я понял что это нарушение концепции изоляции.
Alex
А что именно ты хочешь сделать?
Хочу вызвать скрипт который постучит в интернет и заберёт кое-какие данные, пересохранит их в json и поместить в каталог примапленый к другому контейнеру :)
Alex
Я совсем не уверен, что нужно вызывать именно с хоста. Может вызвать внутри контейнера и передать в шару это лучше?
Vladimir
Я совсем не уверен, что нужно вызывать именно с хоста. Может вызвать внутри контейнера и передать в шару это лучше?
Да, лучше внутри контейнера сделать, чтобы этот процесс был независим от того, на какой машине его запускают
Dmytro 🇺🇦
/spam
Dmytro 🇺🇦
/spam
Gleb
unexpected EOF при docker push в заново поднятый и чистенький docker-registry с хранилищем на S3 (minio) кто как чинил?
Aleksandr
minio какой версии?
Aleksandr
@CheerlessCloud
Gleb
minio какой версии?
Последний билд, RELEASE.2017-10-27T18-59-02Z
Aleksandr
до 2017-03 был баг в minio, из-за которого связка не работала
Aleksandr
2017-03 у меня работает. могу конфиги кинуть. сам покрутишь
Gleb
Кинь, если можешь)
Aleksandr
Кинь, если можешь)
https://pastebin.com/DxHDK90B
Aleksandr
три конфига
Gleb
https://pastebin.com/DxHDK90B
Спасибо большое, ушёл разбираться)
Anton
Коллеги, добрый вечер. Вопрос может глупый. Подскажите, как привязать DNS к контейнеру? Чтобы приложение открывалось при запросе не по IP, а по hostname
Anton
пока только 1 вариант - это nginx proxy
Aleksandr
На ip хоста вешаешь домен
DemDev
Добрый вечер. Как установить ssl сертификат в уже работающий docker container, внутри которого я сейчас нахожусь?
matt
docker cp