Sergey
да там есть ключик
Dmitrii
паппет убрать?
я с паппетом не работал к сожалению, потому толком не могу подсказать, но можно же цепочки докера добавить в то что ты с паппета конфигуришь? либо склей конфиг и того и другого в один общий мегаконфиг и скриптом раскидай если у тебя куча машин
Alexander
В сервис httpd попробууй добавить параметр privileged: true
Anonymous
Добрый день. Подскажите пожалуйста инструмент для мониторинга запросов nginx который крутится под докером желательно чтобы в докере было. Интересуют такие параметры: rps, среднее время ответа по определенным url, количесво ответов где код !== 200
Anonymous
Здрасте Как правильно делать: при изменении контейнера (например установил nginx) лучше сохранять новое "состояние" контейнера или это не состояние а новый контейнер?
a1eXei
как происходят изменения в контейнере, их можно сохранить commit
a1eXei
изменения сохраняются как слои
a1eXei
потом собираешь готовый образ и пушишь в хаб
Roman
низя так делать, есть докерфайл, надо использовать его
Roman
полнож документашек - https://habrahabr.ru/company/infobox/blog/265231/
a1eXei
а ну да, либо всё через докерфайл
Alexander
Физически можно. Но это плохая практика
Artem
ну как бы срать вверх ногами тоже можно, но по некоторым причинам этого делать не стоит
Anton
Тоже интересует аргументированный ответ)
Anton
почему коммит то теперь делать нельзя?
Artem
Тоже интересует аргументированный ответ)
Потому что будет обрастать кучей левых слоев.
a1eXei
все настройки делать только через докерфайл?
Artem
ну проверять можно на рабочем контейнере изнутри
Artem
а в конечный образ все внести через докерфайл
a1eXei
спасибо
Anton
👍
Dmitrii
deploy: mode: replicated replicas: 2 placement: constraints: [node.role == worker]
спасибо (так и не понял нафига нужен композер и без него ок)
Artem
речь о компоуз файле?
Roman
Да о композ файле, в композ файле удобней описывать запуск контейнера(ов)
Roman
Я и для одного контейнера использую композ
Artem
спасибо (так и не понял нафига нужен композер и без него ок)
Когда будешь поднимать стак в 20+ сервисов с кучей параметров поймёшь насколько это "удобно" делать через docker run😂
Vasilii
GitHub - nginxinc/docker-nginx-amplify: Official NGINX and Amplify Dockerfiles https://github.com/nginxinc/docker-nginx-amplify
Dmitrii
Когда будешь поднимать стак в 20+ сервисов с кучей параметров поймёшь насколько это "удобно" делать через docker run😂
Ну у меня поменьше да, через service create на мастер ноде поднял один раз а потом только скриптец сам service update делает
Boris 🦍
привет, кто-нибудь объединял доккерный рэдис в кластер?
Anonymous
Ребят, что я делаю не так: docker run --name vzr images/ubuntu_vzr -p 8081:8081 -d -v ~/dist/vzr:/tmp /bin/bash
Anonymous
Разобрался
Anonymous
Вот теперь не пойму как организовать работу сети между контейнерами. Есть два контейнера backend и frontend Backend слушает запросы к "/get_files" c адресом 192.168.1.10 Fronted отправляет запросы на 192.168.1.10/get_files Когда я создал для фронта и бекенда отдельные контейнеры, эти то ip адрес бэкенда и фронта уже не работают, а используются назначенные ip адреса докера... Как мне теперь получить доступ из одного контейнера в другой., прочитал доку, написано что можно сделать линковку между контейнерами., но мне не ясно на какой url тогда слать запросы (внутри контейнеров) т.к они же могут после перезапуска измениться
a1eXei
привет всем. что уже —link необязательно использовать? у контейнеров по дефолту своя сеть, и они видят друг друга?
a1eXei
я как раз читал про link, и понял что если в одном контейнере не сделать связь с другим контейнером по имени или id, то он не увидит его
ʎıuǝƃʌƎ
привет всем. что уже —link необязательно использовать? у контейнеров по дефолту своя сеть, и они видят друг друга?
по дефолту сеть с драйвером brigde используется, она не умеет так. надо создать свою сетку с этим же драйвером, в ней контейнеры будут доступны по имени
a1eXei
спасибо, мне пока понравилась тема, что если явно я не укажу контейнеру где db находится, то он его не увидит, как то так —link db:db
ʎıuǝƃʌƎ
--link вроде бы deprecated
ʎıuǝƃʌƎ
ага
Anonymous
ага
спасибо
ʎıuǝƃʌƎ
спасибо
тока контейнеры запускать как-нибудь так docker run --network bridge1 --name foobar ... где brigde1 - это созданная вручную сетка о_О
ʎıuǝƃʌƎ
немного неочевидно просто получается и я с этим долго провозился. оказывается, что дефолтная сеть с именем bridge и драйвером bridge так не умеет. а если создавать руками сеть с таким же драйвером, то такая суть уже уже будет уметь доступ к контейнерам по именам
Anonymous
ʎıuǝƃʌƎ
Ок спс, а есть смысл Consul попробовать для этого? (Для связи контейнеров)
хз, я настолько много не курил докер ) тока docker + docker-compose
Anonymous
Ok ok, спасибо большое
Anonymous
Nginx amplify
Спасибо, я dynatrace попробовал вчера, всем устраивает.
Anonymous
Есть смысл попробовать SkyDNS, или сразу Consul лучше?
Artem
Сначала разберись что такое консул и для чего он нужен, для твоих целей выше это вообще тут не при чем.
Mentat
Есть смысл попробовать SkyDNS, или сразу Consul лучше?
В твоем случае есть две грани - 1) тебе нужна сеть чисто физическая, шобы пакеты ходили, чтобы пинги были и прочее - это docker network, links в простейшейм случае.
Mentat
Есть смысл попробовать SkyDNS, или сразу Consul лучше?
2) SkyDns - это днс, те конвертация имени ya.ru в ip-адрес и все. Если тебе этого хватит и виртуалки будут смотреть все наружу - ок, бери. Если нет и тебе нужны какие-то из качеств консула - почитай еще раз про него и попробуй. Вообще нарисуй себе схемку, тут контейнеры(таких-то назначений), тут линки физические между ними, тут как они будут поверх линков работать - и подумай, чего там не хватает
Mentat
Есть смысл попробовать SkyDNS, или сразу Consul лучше?
Технически если все будет работать в рамках одного сегмента сети и все будет доступно друг другу по сети изначально - тебя docker network с links удовлетворит.
Mentat
services: nginx: image: nginx:stable links: - "phpfpm" networks: - front - back restart: always phpfpm: image: php:7.1-fpm networks: - back restart: always Вот например в таком случае у контейнера nginx - внутри будет пинговатся имя phpfpm и будут доступны его порты, те можно написать proxy_pass http://phpfpm:9000; например - и это будет работать. Ключевое слово - links:. Причем если я правильно все помню - если контейнеров phpfpm будет куча - там даже RR балансировка будет между ними.
Anonymous
Блин создал новую сеть, в параметрах запуска укал на обоих машинах эту сеть, в резуль
Mentat
А зачем тут links, контейнеры в одной связки итак доступны по имени хоста.
Дада, давайте завалим человека который в глаза этого всего не видел тонкостями, не зная его сетки и прочее :)
Anonymous
Anonymous
http://mode_of_work_vrach/get_mode net::ERR_NAME_NOT_RESOLVED
Mentat
http://mode_of_work_vrach/get_mode net::ERR_NAME_NOT_RESOLVED
С твоей машины оно и не будет работать просто так. Читай про expose
Anonymous
Ну да, ты прав, лучше явно всё посоветовать)
Anonymous
Смотрите, вот так с контейнера на фронте отправляется запрос
Mentat
Ну да, ты прав, лучше явно всё посоветовать)
Я начинал 12 лет назад с саппорта модемных юзеров) Воспитывает некий склад ответов на вопросы)
Anonymous
Anonymous
Вот такое получаю
Anonymous
Anonymous
Или лыжи не едут...
Mentat
Получаешь потому, что имя mode_work оф - на твоей машине не резолвится
Anonymous
mode_of_work_vrach это контейнер с бэкендом
Mentat
в его dockerfile есть EXPOSE ?
Anonymous
В nginx для web?
Anonymous
Таймураз
Припиши http:// в начале
Mentat
так тебе надо на localhost:80 ломиться тогда
Anonymous
Использует кто-нибудь Træfik?
Anonymous
так тебе надо на localhost:80 ломиться тогда
Так локалхост же это контейнера с фронтом