@docker_ru

Страница 60 из 1375
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
Пока выход вижу выносить конфиг nginx в volume. Но вроде решение так себе ?
можно через swarm, там свой load balancer, даже конфиги генерировать не придется, но есть очень странные проблемы вроде той, на которую я дал ссылку выше. получается один nginx и произвольное число воркеров.

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?

он не выполнился
Что значит не выполнился?

Страница 60 из 1375