Artem
На php прописан?
Vyacheslav
https://pastebin.com/qzGhWw5Q
Vyacheslav
скажи мне в чём я дурак)
Artem
Ну делай docker-compose up -d и рестартуй хост, все должно работать, если докер демон в автозагрузке
Vyacheslav
ну вот в том и прикол
Vyacheslav
чтобы не подниимать после каждого рестарта системы
Vyacheslav
Aleksandr
коллеги, у меня поднят docker registry на 5000 порту, 5000:5000. В отдельном docker-compose поднят caddy, который проксирует 443 => 5000 с настроенным через let's encrypt сертификатом. но docker registry продолжает быть виден на domain-name:5000, хоть и прикрыт через basic auth. Как можно повесить registry на локальный интерфейс и проксировать через caddy в другой сетке?
Андрей
кэди закидываешь в сетку докер регистри docker network connect
Андрей
а докер регистри убираешь порты из паблиша
Андрей
А вообще лучше в фаерволе делать белый лист, соответственно 5000 порт туда не попадет
a1eXei
привет, про фаер, докер где то хранит правила iptables? чтобы после ребута они применялись?
Андрей
Если не указано иное, то да все в iptables. # iptables -vL А как организовать хранение иптейбла уже дело вкуса в интернете масса инфы
Aleksandr
а докер регистри убираешь порты из паблиша
спасибо. Для истории: - создаем сетку docker network create caddy - в docker-compose caddy прописываем сеть caddy как external в разделе networks, и в разделе services присваиваем сеть caddy сервису caddy - аналогично делаем в docker-compose registry (сеть caddy), убираем порты из паблиша - в Caddyfile проксируем к registry:5000, где registry - имя сервиса в docker-compose.yml
Anton
Привет! Поискал по чатику, вроде такой вопрос еще не поднимался! Правильно ли я понимаю что в текущей момент невозможно выполнить команду docker stack deploy/rm через http api swarm ? Пробовал ли кто альтернативные вариванты, например 1) Пробрасывать docker.sock по сети 2) Создавать командный контейнер преобразующий REST -> docker.sock
Андрей
сокет докера категорически нельзя прокидывать по сетке, ибо это почти 100% рут на хосте. Зачем нужен сокет, если к демону можно постучаться по tcp
Андрей
Какая задача поставлена, может быть все решается намного проще?
Anton
Задача - в контейнеру крутится GUI, который должен уметь 1) сделать docker stack rm 2) пройти по всем manager нодам сварма и удалить ненужные волюмы
Андрей
gui-шка уже есть? или планируется? Если планируется, то уже есть пару вариантов монстров, которые делают это сами: portainer, rancher, kontena, panamax
Anton
GUI штука инхаус, имеет доп логику которые накручивать например на portainer непонятно с какого боку. Пишется
Андрей
Ну в целом управлять полноценно стаком никак по АПИ, потому что ребята особо не торопятся поддерживать свой же функционал, 1 момент с ФС чего стоил. Можно как вариант коннектиться по ссш к машине на котором планируется управлять стэком и выполнять обычные команды, а со свармом проще, с помощью апи дергать листы и удалять лишнее
Anton
Ясно, ну ssh это вариант но не оч. Думаю в режиме global запустить лайтовый контейнер (с проброшенным сокетом), на каждой ноде, к котому можно подкчлючиться и исполнить команды
Николаич
Подскажите порядок действий при деплое. Есть бэк на руби + мускул + эластик + рэдис. Щас при мердже в дев ветку Дженкинс всю эту херабору релоадит. Я так понимаю правильно будет рядом поднимать контейнер, там это все собирать, релоадить, а потом уже убивать старый контейнер и переключать используемый порт. Но вот как делают умные люди я хз. Просветите, плиз.
Николаич
А то при деплое на 10-15 минут сервер ложится.
Artem
Весь код в образах, и при апдейте просто обновляется тег образов на новый, а даунтайма заключается только во времени запуска контейнера.
Artem
Это если по простому
Alexander
А вам нужно каждый раз редеплоить тяжелый мускуль, редис и вот это все? Можно сделать общую сеть, тяжелые сервисы, которые не меняются почти никогда, поднять в отдельный docker-compose и никогда не трогать, а все динамичное (ваш бекэнд на руби в данном случае) редеплоить отдельным docker-compos'ом. Тогда деплой будет быстрым и с минимальным даунтаймом.
Artem
А если к этому сверху прекручен например consul + consul_template + nginx то даунтайма вообще нет
Ну я потому и уточнил, что по простому, так то все могут без даунтайма и сварм и кубер, только вот средствами просто докера это не сделать без костылей
Vyacheslav
Уважаемые, как мне получить доступ к php-cli ?
Vyacheslav
зайти в контейнер?
Vyacheslav
или можно не заходя это сделать?
Vyacheslav
благодарю
Vyacheslav
docker run —rm -it php php -v
только 1 вопрос
Vyacheslav
разве —rm не удаляет конетйнер?
Aleksandr
Да
Vyacheslav
тогда зачем ты сказал эту команду?
Vyacheslav
Vyacheslav
в мане, не однозначно
Aleksandr
тогда зачем ты сказал эту команду?
Потому что это ответ на твой вопрос
Vyacheslav
в общем прошу прощения за неосведомлённость
Aleksandr
Запускаешь команду, создаётся контейнер, команда отрабатывает, контейнер удаляется.
Vyacheslav
ну он уже запущен
twwlf
тогда docker exec ${container} php -v
twwlf
-it в таком кейсе, скорее всего, не нужно
Alexey
-it это вроде как интерактив ) если я правильно понимаю)
Vyacheslav
нужно дёрнуть запущенный, и получить доступ к волюму другого сервиса
sadkos
да
Vyacheslav
Всё, разобрался, спасибо
Vyacheslav
экзек тошо надо
Vik
Ребят, а в это чате слово Кафка вызывает литературные эмоции или софтварные?
sadkos
Я люблю гречневую кафку
Vik
Vyacheslav
тогда docker exec ${container} php -v
а как мне передать к примеру cd .. & ls ?
Igor
Всем ночь добрая. Может кто сталкивался, сервис с node1 не пингует сервис который работает только на node2 ufw disable - включается пинг. ufw enable - пинг какое то время еще ходит... но через час полтора - пропадает
Igor
)
Igor
все это живет в docker swarm
Alexey
Ребята, кто-нибудь слышал/использовал VMware vSphere Integrated Containers? https://github.com/vmware/vic
Anton
Ребят, а в это чате слово Кафка вызывает литературные эмоции или софтварные?
Обычно все заканчивается на разговорах "а вот было бы неплохо внедрить", а потом возвращаемся из курилки обратно к унылому sidekiq
Igor
--net=host ?
не очень понял Да используется отдельная сеть networks: mynetwork: driver: overlay driver_opts: encrypted: "true"
Igor
--net=host ?
и у контейнера потеряшки (который на другой ноде) - еще дополнительно в docker-compose.yml - endpoint_mode: dnsrr
Anton
вообще для докера лучший тип сети - это host network, остальное может глючить и тупить) много раз читал такое в разных местах
Anton
А в чем проблема?
Пока не припекло
Anton
Но всякие серьезные и большие вещи типа парсера миллион встраниц в сутки - на кафку бы я впервую очередь посмотрел
Anton
В смысле на чем?)
Vik
Там spark, flink, что-то еще?
Vik
Кафка же не парсить
Anton
Аа, когда то давно парсил - все было самописное , на очередях постгреса, плюс самописные ноды и координатор. Сейчас ничего такого что тупо не влезло бы в редис и пары наколеночных скриптов и не парсил давно. Если я правильно понял вопрос. Брать flink это как из BFG по вороьям
Akhmed Gasanov
как запустить контейнер передав ему аргумент?
Akhmed Gasanov
тоесть у меня там крутится питоновый скрипт который принимает один аргумент
Akhmed Gasanov
Dockerfile
Alexey
docker run <имя_образа> <аргумент>
Alexey
внезапно