Pavel
дэбианы
Pavel
посмотрю спс
Maksim
Ребят, вопрос. Нужно proccess manager какой-нибудь для ноды запустить, чтобы в случае падения перезапускать ну и просто логи/статистику через веб панель смотреть, остановился на strongloop pm, но главный вопрос как лучше организовать? Запускать его в контейнере с нодой и открывать порт для веб интерфейса, но тогда в каждом контейнере будет крутиться свой pm и каждому нужен свой порт? Мб есть решение лучше?
Гайрат
supervisord
Pavel
системды
Maksim
Ага
Artem
Там pm2 же есть
Artem
И логи сам пишет и воркеры может контролировать
Dave
pm2 preach
Dave
лучше ничего не находил
Maksim
И еще forever), но я не совсем понимаю как это все лучше организовать
Dave
forever это вообще другое
Sergey
выкинуть ноду написать на го)
Sergey
Dave
Dave
http://pm2.keymetrics.io/docs/usage/docker-pm2-nodejs/
Artem
Опередил)
Artem
Только собрался Линк кинуть)
Maksim
Т.е. в каждом контейнере будет свой pm2 крутиться?
Artem
Да
Artem
Он будет контролировать твою Апу на ноде
Maksim
Понял
Maksim
Спасиб
Гайрат
Consul?
Alexander
привет, подскажите плс есть докер, в нем сервис с апи. при запуске контейнера выставлено -p 127.0.0.1:8545:8545 если дернуть апи курлом из контейнера - получаю ответ. если из вне curl: (56) Failure when receiving data from the peer что могло бы быть?
Yevhen
Expose есть?
Alexander
нет, не прописано в параметрах нужно? с тем же портом, что у сервиса открыт?
Yevhen
Пробуй)
Alexander
попробовал. легче не стало
Yevhen
Docker ps
Yevhen
Docker inspect dpckernan
Alexander
ps - мой контейнер inspect https://gist.github.com/alexadept/7aa9ff6784ba93f0d993a09cffc0be03
Yevhen
Curl 172.17.0.1:port
Yevhen
Сост машины
Yevhen
Хоста*
Alexander
couldn't connect to host на 172.17.42.1 (докер интерфес хоста) - то же самое если указать не -p 127.0.0.1:8545:8545 а 8545:8545 то на 172.17.42.1 запрос отрабатывает. остальные - ничего не меняется это уже не плохо. правда нельзя сервис наружу выставлять
Alexander
о чем это должно было мне сказать?)
Alexander
т.е. я бы предположил, что приложение отвергает. но. там явно сказано принимать со всех и из контейнера - обращался на всевозможные интерфейсы - отрабатывает
Yevhen
Сорри. Спать
Yevhen
Выкинуть в пастедин
Yevhen
А дальше видно будет
Alexander
в любом случае спасибо
Alexander
частично проблема решена
Сергей
всем привет
Сергей
кто-нибудь dc/os использует?
Sergey
Vladimir
Господа, объясните где я тупой, есть строчка в /etc/docker/daemon.json, но в лога он говорит что не понимает этот параметр
Vladimir
Vladimir
the following directives don't match any configuration option: data-root
Vladimir
docker.io 1.12.6-0 если что
Oleg
docker.io 1.12.6-0 если что
https://stackoverflow.com/questions/24309526/how-to-change-the-docker-image-installation-directory
Oleg
вообще версия прилично древняя у вас
Arkadiy
Господа, подскажите пожалуйста, как в композере сделать чтобы второй контейнер начинал деплоится только после того, как задеплоился и запустился первый
Arkadiy
То есть мне нужно, чтобы второй контейнер внёс изменения в первый и сделал это только один раз при деплое
Arkadiy
Или лучше просто сделать файл-заглушку, который не даст инициализировать бд больше одного раза и забить?)
Artem
вообще есть depends_on
Artem
но build в компоузе это просто как дополнительная фича, не стоит использовать ее вмесо ci
Artem
Как вариант билдить имаджи отдельно, а в компоузе только их указывать и запускать с директивой depends_on
Arkadiy
вообще есть depends_on
он же на запуск вроде влияет, а не деплой
Artem
Не проверял точно, но раз он не создаёт контейнер пока не создана зависимость, то возможно и билд не будет начинаться.
Artem
Но это не точно
Anton
Depends_on не будет ждать пока стартанет база например
Anton
Нужно свой велосипед делать
Artem
ну старта базы да, только контейнера самого
Pavel
Всем привет Есть задача навесить на сворм мониторинг живучести контейнеров, плюс аггрегатор логов
Pavel
Под мониторинг пробовал делать по https://habrahabr.ru/company/southbridge/blog/327670/ вот этому мануалу, то есть на связке cAdvisor, InfluxDB и Grafana
Pavel
Под логи насколько мне известно популярностью пользуется стек Elasticsearch, Logstash и Kibana, быстрое гугление привело на статью (пока сам ещё не поднимал) https://habrahabr.ru/post/282866/
Pavel
Вопрос Как, собственно, лучше делать? Под мониторинг - одно, под логи - друогое? Или есть какой-нибудь стек, объединяющий в себе это всё?
Pavel
для инфо - сворм ~8 машин, ~30 сервисов
Artem
Prometheus + cadvisor + grafana для мониторинга контейнеров и elk/efk для логов
Artem
Мониторинг и логи все таки разные вещи
Pavel
Принято, спасибо Ещё кто-нибудь что-нибудь посоветует? Может комментарии?
Anonymous
Коллеги, доброго утра! Хочу сделать интеграционный тест с помощью докера. Простейший случай: в одном контейнере JSON API сервер, в другом контейнере - JSON API клиент, в третьем контейнере PostgreSQL (для сервера). Далее, когда я правлю код либо сервера либо клиента и нажимаю ctrl-S, хочу чтоб не только юнит-тесты запустились, но и протестировалась интеграция между сервером и клиентом. В интернетах какие-то бородатые туториалы про docker-compose v2. Как я понимаю, современный подход - это swarm. Резюмируя, нужны: 1) интеграционные тесты в процессе редактирования кода 2) ну и CD pipeline в итоге Кодовая база у меня - руби, если это интересно. Кто-то решал уже эту задачу?
Anonymous
Как я понял, надо сделать отдельный контейнер с тестовой логикой. Так?
Artem
Конфигурить сварм ради 3 контейнеров - мощно 😄👍
Artem
Хоть я считаю сворм нормой даже для одной ноды, но даже мне кажется что тут он излишен и можно обойтись просто компоузом