
Sergey
13.11.2016
16:54:59
потому что CGI медленный, а с php-fpm его не подружишь
а вообще сча погуглю

Eugene
13.11.2016
16:55:56
я как-то сервил сам phpBB через uwsgi
даже конфиг где-то в гист валяется

Google

Eugene
13.11.2016
16:56:11
могу ссыль кинуть

Sergey
13.11.2016
16:57:20
https://github.com/phpsgi/phpsgi
бегло погуглил - пых с uWSGI через CGI работает сильно медленнее php-fpm который держит пул воркеров, а сторонние солюшены сырые
ну то есть смотреть в этоу сторону смысл есть но пока рано
и только если будут развиваться решения вроде reactphp

Eugene
13.11.2016
16:59:15
так у uwsgi тоже воркеры

Sergey
13.11.2016
16:59:39
документация говорит что в случае с php оно по запросу поднимает воркер через cgi
и после ответа он умирает целиком

Alex
13.11.2016
17:00:22
https://github.com/php-pm/php-pm
тот же php-fpm только помимо модуля воркер еще и приложение преалоадит
только сырое походу.

Sergey
13.11.2016
17:01:31
да норм, я его даже юзал как-то и знаю пару чуваков у которых в проде оно висит
там все упирается в стрим парсер http который в reactphp никак не могут допилить

Google

Sergey
13.11.2016
17:01:58
но на моих проектах multipart запросов нет)
файлы льются напрямую с клиента на какой-нибудь s3

Alex
13.11.2016
17:02:25
мультипарт через нжинкс можно разрулить, нет?

Sergey
13.11.2016
17:03:01
эм... нет
хотя может и можно но у меня просто нет такой необходимости

Kvendingoldo
13.11.2016
17:30:15
Народ, а можно как-то удалять имаджи из регистри НЕ через curl или burnettk/delete-docker-registry-image?
Можно же как-то, наверное, через docker rmi?

Bogdan (SirEdvin)
13.11.2016
17:32:27

Artem
13.11.2016
17:43:44

abc
13.11.2016
19:11:26
а кто тут работал с проектами на WebRTC ? как они себя ведут в докере, при наличии стандартных задержек в докер сети

Alexander
13.11.2016
19:13:27
я думаю там такие мизерные задержки, что их и не заметишь
ну и голос и видео лучше не гонять в докер сети, память на port mapping много затратится

ven
13.11.2016
19:27:18
всем привет(я вернулся :) Народ какой ща лучший веб(php|python|java|go) манагер для докер-контейнеров на удаленном серваке?

abc
13.11.2016
19:45:35
интересно кто ставил эксперименты с webrtc. завтра сам попробую
ведь это p2p коннект, докер тут будет только инициатором коннекта. если конечно это будет по STUN а не TURN

Sergey
13.11.2016
21:53:34
ребят, тупой вопрос
как вы мониторите статусы контейнеров?
у меня сейчас есть деплоймент, который мягко скажем работает легко и просто
eval $(use_machine TARGET_MACHINE)
docker-compose pull
docker-compose up -d
задача - мне надо как-то дожидаться что один из контейнеров таки начал принимать запросы

Google

Sergey
13.11.2016
21:54:49
у него процесс старта сейчас занимает где-то 30-40 секунд, но иногда по 2 минуты
раньше у меня было что- тотипа
timeout 60 docker-compose logs -f application
но сейчас хочется как-то что-то адекватнее придумать. Что делать и как быть?
можно ли использовать хэлсчеки?
предоставляет ли докер ивенты какие-то?
если конечно идея
тупой цикл который раз в 10 секунд проверяет не умер ли контейнер при старте и отвечает ли приложение на запросы
но может есть что-то менее велосипедное уже?
я не думаю что это какая-то новая задача

Max
13.11.2016
22:14:31
Мы, к примеру, у себя используем ранчер. Это как раз утилита для оркестрации контейнерами с интерфейсом. Умеет самостоятельно перезапускать контейнеры в случае падения. Плюс можно из интерфейса новые запускать или гасить, смотреть логи и прочее.
http://rancher.com/

Anton
14.11.2016
13:06:49
как в докерфайле одного контейнера вызвать команду из другого контейнера? (линк есть и вольюм прокинул)

Kirill
14.11.2016
13:08:32
ssh?
возможно

Anton
14.11.2016
13:10:25
других вариантов нет? просто логически хотелось бы разделить контейнер с пхп и самим приложением, но чем дальше вглубь, тем больше дров

Alexander
14.11.2016
13:12:55
зачем разделять?
приложение может само работать без php?

Anton
14.11.2016
13:14:41
нет, оно не может работать без всего, что перечислено в докер-компоуз, но это же не говорит о том, что мне нужно делать один большой-большой билд?)

Kirill
14.11.2016
13:15:46
вопрос в том, для чего разделять пхп и приложение?

Google

Alexander
14.11.2016
13:16:34
приложение вообще подключается через volume и все

Kirill
14.11.2016
13:16:56
с :ro

Anton
14.11.2016
13:17:11
в нем фрейморк, и надо бы выполнять парочку-другую комманд
из серии сбросить кэш, и поставить вендоры, если их нет
те же миграции выполнить

Alexander
14.11.2016
13:18:06
ну сделай скрипт, который будет все это делать при запуске

Anton
14.11.2016
13:18:26
делаю, докерфайл)

Kirill
14.11.2016
13:18:39
подрубаешь приложение через волум, стартуешь контейнер с пхп, он выполнив задачу (sh скрипт) завершает работу

Anton
14.11.2016
13:19:10
а почему не в докерфайле это делать?

Kirill
14.11.2016
13:19:18
через compose выставляешь приоритеты
что когда и зачем стартовать

Alexander
14.11.2016
13:22:11
можешь запускать тот же скрипт в отдельном контейнере, который как закончит все дела удалится

Kirill
14.11.2016
13:22:32
именно

Anton
14.11.2016
13:46:21
но тогда в этом скрипте все равно придется по ссш коннектиться к пхп контейнеру, верно?

Kirill
14.11.2016
13:49:32
имеем 2 контейнера. 1 - крутит приложение, 2 - скрипт который выполняет то что тебе нужно (php, сброс кэша). К 1 и 2му контейнеру с помощью volume подключаем папочку с приложением. На выходе имеем доступ к приложению у обоих контейнеров.
По такому принципу у меня bareos работает, 4 контейнера имеет доступ к папке с конфигами (с :ro (read only)) Сначала стартует director (sh скрипт) который проверяет доступ к контейнеру с базой данных, ждет пару секунд, затем проверяет наличие базы данных и если ее нет то создает базу, юзера, если есть - пропускает шаг создания и запускает director

Anton
14.11.2016
14:01:34
первый контейнер с пхп, второй контейнер - скрипт, и из второго контейнера мне нужно дергать первый, ибо нужно пхп и там и там

Alexander
14.11.2016
14:03:50
ну так запусти оба контейнера с php

Nikita
14.11.2016
14:52:45
Докер это вам не виртуалка, чтоб коннектится и дергать
Вот вам вообще он зачем в вашей задачи ? модно ?

Google

Nikita
14.11.2016
14:55:03
Я когда думаю про докер и что с ним делать представляю контейнеры иммутабельными, т.е собрал запустил и ничего менять внутри не надо, а если надо то пересобрал и запустил

Anton
14.11.2016
14:55:11
можно, имеется 6 разработчиков и пять проектов с разным окружением, сейчас сидим на вагранте, но это очень неудобно, и к тому же отбирает немало места, так же с докером процесс деплоя будет проходить без непритных неожиданностей (или, хотя бы, с меньшим их количеством)

Ruslan
14.11.2016
14:55:12

Anton
14.11.2016
14:56:29
ок, нужно выполнять миграции, желательно не лазя каждый раз внутрь контейнера, и не прописыать их руками
как это сделать?
нужна и бд, и приложение с пхп
без "дерганий и коннектов"

Alex
14.11.2016
14:57:00
entrypoint.sh
entrypoint

Anton
14.11.2016
14:57:43
создал, он пишет, что запускает его, но на деле он ничего не выполнил) а второй раз пишет что берет результат из кэша)

Alex
14.11.2016
14:58:03
какой такой кэш?

Anton
14.11.2016
14:58:12
специально там сделал ошибку - никакой инфы об этом не вывело

Alex
14.11.2016
14:58:25
пишешь обычный скрипт который будет запускать сначала миграции а потом приложение
и делаешь его своей входной точкой в контейнер

Anton
14.11.2016
14:58:33
Step 4 : COPY entrypoint.sh /tmp/entrypoint.sh
—-> Using cache
—-> b066296d9691
Step 5 : RUN chmod +x /tmp/entrypoint.sh
—-> Using cache
—-> 738cde770555

Alex
14.11.2016
14:58:42
И?

Anton
14.11.2016
14:58:50
он не выполнился

Alex
14.11.2016
14:58:57
и не понятно почему /tmp?