Vadim
кто-нибудь пробывал http://rancher.com/rancher/ ? и стоит ли использовать.
перспективно, но пока много багов. простые вещи работают хорошо, но есть затыки на некоторых крайних ситуациях, которые могут привести к проблемам в продакшене. использую для тестирования и на некритичных сервисах, жду стабильной версии
Антон
ребят, а где можно почитать всякие хауту по альпине? а то пытаюсь переделать убунтовское WORKDIR "/var/www" RUN usermod -u 1000 www-data на альпиновское WORKDIR "/var/www" RUN adduser -D -u 1000 www-data и получаю мессагу adduser: user 'www-data' in use
Антон
ага, туплю, создаю существующего юзера
I
гайз, а статичные изображения для джанго/фласка/
I
для джанги/фласка/энифинг есть смысл в отдельный контейнер запихивать? хм. или они должны быть в волюме, который примантируется к nginx, например?
Alexander
nginx у тебя в режиме reverse-proxy ?
Alexander
хотя и к нему можно прикрутить конфиг и папку с статикой
I
ну пока вообще нет nginx. до прода не дошел толком. но предполагаю, что он там будет.
I
не очень понял про режим nginx. а какие еще бывают режимы?
Alexander
reverse-proxy нужен что-бы пробрасывать http/https трафик до сервис контейнеров
I
это да. а какие еще бывают режимы у нджикса?
Dmitrii
CGI режим
Vadim
подскажите пожалуйста. запущен контейнер. мне нужно перезапустить его с опцией —log-driver=none как это можно сделать?
Sergey
docker update?
Sergey
Usage: docker update [OPTIONS] CONTAINER [CONTAINER...] Update configuration of one or more containers --blkio-weight Block IO (relative weight), between 10 and 1000 --cpu-shares CPU shares (relative weight) --cpu-period Limit CPU CFS (Completely Fair Scheduler) period --cpu-quota Limit CPU CFS (Completely Fair Scheduler) quota --cpuset-cpus CPUs in which to allow execution (0-3, 0,1) --cpuset-mems MEMs in which to allow execution (0-3, 0,1) --help Print usage --kernel-memory Kernel memory limit -m, --memory Memory limit --memory-reservation Memory soft limit --memory-swap Swap limit equal to memory plus swap: '-1' to enable unlimited swap --restart Restart policy to apply when a container exits
Sergey
не уверен что оно работает со всеми опциями, ни разу не пользовался
Alexander
а зачем логи выключать?
Sergey
еще можно руками подредактировать файлик с конфигом контейнера)))
Sergey
vim /var/lib/docker/containers/{hash}/config.json
Sergey
этим пользовался - подменял команды
Vadim
на самом деле я хочу ограничить размер лога
Alexander
logrotate надо настроить
Vadim
как его настроить для контейнера?
Vadim
я про —log-opt max-size
Alexander
https://blog.amartynov.ru/docker-logrotate/
Vadim
logrotate вариант
Vadim
но все же, есть ли у докера возможность перезапустить с новыми опциями?)))
Vadim
docker update немного про другое
Alexander
заново создать контейнер можно
Vadim
у меня база с метриками в контейнере
Vadim
про создать это очевидный вариант, да
Alexander
а вот это косяк
Alexander
базу надо хранить в volume
Sergey
> Vadim у меня база с метриками в контейнере ну так перенеси базу данных в волум, это не сильно сложно
Vadim
понял, спасибо за ответы
A
#whois Всем привет ▫️Админ в inplat.ru ▫️Всего понемногу. Linux, виртуализация, SCM, БД, CI ▫️Не наю ▫️Опыт, best practices ▫️Москва ▫️@devops_ru
Евгений
reverse-proxy нужен что-бы пробрасывать http/https трафик до сервис контейнеров
На чем сошлись? Как лучше статику подключать ? 1. Запихнуть в контейнер. Волюм из контейнера прислонить в фс и натравить на неё nginx. 2. Положить статику внутрь, отдавать ее в nginx как и все остальное через proxy_pass, тот Ее себе аккуратно сложит на диск с помощью proxy_cache. И дальше будет пулеметом раздавать. 3. Сделать отдельную сборку и отдельно выкладывать.
Евгений
Коллеги, а кто игрался с flynn.io? Этакий PaaS из грязи и веток в домашних усвлояих? Прям полноценный домашний Heroku.com Обещают из коробки нормальное разорачивание контейнеров, связывание всего добра воедино, настройку базы(!), причем ставят сразу 3 ноды на разные сервера и организуют отказоустойчивость и автопереключение выпадающих нод.
Bogdan (SirEdvin)
Добрый день. Может кто подсказать по клиентским сертификатам в nginx? Делаю все по этой инструкции: http://nategood.com/client-side-certificate-authentication-in-ngi (только ssl_verify_client on и ключи перегоняю в ключи без паролей) и мне nginx все равно постоянно возвращает такой ответ: < HTTP/1.1 400 Bad Request < Server: nginx/1.10.0 (Ubuntu) < Date: Mon, 31 Oct 2016 10:03:22 GMT < Content-Type: text/html < Content-Length: 240 < Connection: close
Alex
Включи полный debug лог и смотри на что ругается.
Kirill
https://letsencrypt.org/ юзай
Bogdan (SirEdvin)
Похоже, нашел только такое: *2 client SSL certificate verify error: (18:self signed certificate) while reading client request headers, client: 138.201.244.18, server: loansinfo.com.ua, request: "GET / HTTP/1.1", host: "loansinfo.com.ua"
Bogdan (SirEdvin)
https://letsencrypt.org/ юзай
С самоподписанными сертификатами клиентскую авторизацию не реализовать?
Kirill
реализовать конечно
Bogdan (SirEdvin)
реализовать конечно
Это просто тестовая площадка, которую надо запустить один раз и убить, поэтому пока так
Kirill
Это просто тестовая площадка, которую надо запустить один раз и убить, поэтому пока так
server { listen 80; server_name ХХХХХ.ru; return 301 https://ХХХХХ$request_uri; error_log /var/log/nginx/ХХХХ.error; } server { listen 443 ssl; server_name ХХХХ.ru; ssl on; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_certificate /etc/letsencrypt/live/ХХХ.ru/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/ХХХ.ru/privkey.pem; ssl_stapling on; ssl_stapling_verify on; ssl_trusted_certificate /etc/letsencrypt/live/ХХХХХ.ru/chain.pem; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; add_header Strict-Transport-Security "max-age=31536000;"; add_header Content-Security-Policy-Report-Only "default-src https:; script-src https: 'unsafe-eval' 'unsafe-inline'; style-src https: 'unsafe-inline'; img-src https: data:; font-src https: data:; report-uri /csp-report"; location / {
Kirill
Логи - наше ВСЁ
Bogdan (SirEdvin)
Ну, у меня есть оправдание - температура мешает думать :)
Alex
Гайз, а вольюмы в докере это типа шаред директория, всё верно?
Kirill
Да
Sergey
Это больше на маунт просто похоже
Alex
Я хочу локальную директорию замаунтить как директорию с конфигом энджинкса в контенере. Типа -v /something:/etc/nginx
Alex
И чтобы из директории энджинкса ничего не пропало.
Kirill
Встречный вопрос, имеем контейнер в котором идет установка bareos, но при установке (как я понимаю из ошибки) не создаются конфиги ..
Sergey
ребят, у меня вопрос по поводу onbuild и кэширования. Допустим у меня есть образ A с onbuild инструкцией которая что-то делает. А делает она установку зависимостей. И есть контейнер B в котором еще какие-то операции. Не будет ли так, что поскольку onbuild инструкции всегда будут выполняться (там же есть копирование файлов) то это будет вызывать полный ребилд всех дочерних образов?
Kirill
Встречали такое?
Sergey
@ads_alpha ну так делай)
Nomadic
учти что /etc/nginx будет полностью заменена на содержимое /something
Sergey
@ads_alpha я так в dev делаю
Alex
У меня были сомнения.
Alex
Тогда надо всё то счастье из стандартного /etc/nginx поставить в отдельную папку и маунтить.
Nomadic
монтировать только определенный файл с конфигом в /etc/nginx/conf.d/
Alex
монтировать только определенный файл с конфигом в /etc/nginx/conf.d/
Мне надо в sites-available/sites-enabled, но там принцип вроде такой же… Ладно, подумаю.
Nomadic
можно сразу в /etc/nginx/sites-enabled чтоб не возится с симликами еще
Антон
в докер-композе build выполняется до подключения volum'ов?
Alexander
volume подключаются во время запуска
Антон
т.е. нельзя при использовании билда подключить вольюм в самом докер-композе?
Kirill
Сначала идет сборка build, на данном этапе идет сборка образа из Dockerfile или же просто скачивание если юзаем стандартный image , далее up, настроки сети ,волумы и так далее взлетают на данном этапе.
Kirill
Если не прав, сильно пинайте.
Sergey
Anton на данный момент нельзя юзать волумы при сборке (в промежуточных контейнерах). Тикет об этом есть в ишус трекере докера, и даже есть сторонние запатченные докер демоны где эта возможность есть (мне например ее не хватает).
Sergey
https://github.com/docker/docker/issues/14080
Andrew
в rocker для примерно этого есть mount
Sergey
так это... все же подниму вопрос. onbuild или не onbuild?
Sergey
например... есть менеджер пакетов который ставит зависимости. и сейчас я вызываю его до сборки образа. Это выливается в то, что вместо того что бы залить пол мегабайта приложения, льется внутрь 100 метров зависимостей + пол мегабайта приложения. Как следствие - увеличение времени сборки (ажно на 10-15 секунд!), увеличение размера образов и т.д. Есть вариант запихнуть в onbuild у родительского образа инструкции необходимые для установки всего и вся, но в этом случае в контейнер запихиваются вещи, необходимые исключительно для скачивания зависимостей (например git). Более того, при изменениях в зависимостях происходит полный ребилд дочернего образа (не то что бы сильно долго но все же). Так же отсутствует возможность использование кэша (проектов у меня много, где-то 80% зависимостей можно кешировать, одинаковые).
Sergey
что делать? как жить?
Sergey
p.s. изменения в зависимостях происходит максимум у одной сборки из 10-ти.
Kirill
так это... все же подниму вопрос. onbuild или не onbuild?
Сергей, возможно тебе проще разбить задачу на несколько этапов, написать конфиги и дергать образы для выполнения определенных задач с последующим их удалением?