yopp
An7on
плохая, но лучше чем крон на хосте)
An7on
можно это залить пачкой куда-нибудь и будет там также
Vitalii
ну вообще варианты есть когда делают не крон задачи, а демон задачи котоыре сами в себе крон делают. Типа каждую сукунду срабатывает вечный цикл и там проверяется раписание. Эти все процессы в супервизор и агонь.
Vitalii
Супервизор в отдельном контейнере лежит.
yopp
контейнер не должен ничего знать об окружении
yopp
иначе вы себе из докера пиздец делаете
Vitalii
но все же это надо закладывать сразу. А что если есть уже система заточеная под крон (расписанием стороняя программа занимается)?
yopp
если вам нужны какие-то фоновые задачи, сделайте свой шедулер на уровне приложения и точку входа в шедулер поставьте в entrypoint
yopp
если вы свою бизнес-логику начинаете вытаскивать куда-то наружу — вы огребёте тухлой треской по еблу
Vitalii
Vladislav
Vladislav
чёт, alpine какой-то каличный, поставил gcc, пробую собрать простейший main.c, выдает ошибки линковки с crti.o
Vitalii
Мало того, контейнеры с шедулерами НЕ должны дублироваться.
yopp
yopp
Vitalii
Код длжен запускаться через контейнер. Откуда - вопрос.
yopp
докер не шедулер
Aleksey
да чего вы спорите - это просто не решенная пока что проблема :))
Vitalii
Нельзя просто так взять и задублировать кучу контейнеров внутри которых шедулер.
yopp
Vitalii
yopp
Aleksey
Aleksey
yopp
Это задача твоего приложения уметь определять условия в которых что-то не может запуститься
yopp
И как конкретно ты будешь это делать — к докеру вообще никакого отношения не имеет
yopp
Потому что это уровень приложения
Vitalii
я не понимаю почему докер должен решать вообше эту проблему
он не должен, но он здесь прямо завязан.
Взять самое популярное php приложение.
PHP и все его кишки настроены в контейнере и у тебя два варианта:
1. Наследоваться от имаджа с пхп для твоего проекта и в него шедулер процессов
2. Как я описал... через докер (кружение) только пуск задач, а сам шедулер за контйнером
Vladimir
Я буквально на днях собирал в алпине мезос из сырцов - норм всё собирается. Хз чо за проблемы с простейшим файлом у вас..
Vladislav
Vladislav
не хочу замусоривать конечный образ
Vladimir
Vladimir
один в один
Aleksey
Sergei
Vladimir
на докер хабе масса примеров с убунтой
Aleksey
Sergei
Vladislav
а если этот blablabla потянет сотню зависимостей, они тоже удалятся?
Aleksey
докер то тут причем
Sergei
это вот сделает autoremove
Aleksey
божешьмой
yopp
yopp
Вариант 2 это попытка натянуть слона на глобус
An7on
А если у меня 50 контейнеров, которые собирают статистику и кладут в свою базу (или обрабатывают на лету)
yopp
Потому что докер это не уровень приложения, это уровень инфраструктуры. Твоё приложение в иделе не должно знать про докер ровным счётом нихуя.
An7on
почему бы ими всеми через отдельный контейнер с кроном не управлять?
Vladislav
По поводу шедулеров, считаю, что если шедулинг какой-то задачи является неотъемлемой частью сервиса, то надо пихать крон внутрь и не морочить голову и запускать всё через supervisor
yopp
....
yopp
пипец
yopp
Vladimir
An7on
почему не собачье дело?
An7on
я это залью на другой серв и там всё будет работать также
An7on
смысл в этом, не?
yopp
Нет?
yopp
Не в этом?
An7on
приложение не знает про другие сервисы
An7on
оно просто умеет брать данные и делать дела с ними
yopp
Любая попытка завязать сервис внутри докера на сам докер — провальна.
yopp
И это явный признак того, что вы контейнеры неправильно готовите.
An7on
не на сам докер, а на управление другими докер контейнерами
Aleksey
@dd_bb увы
yopp
yopp
я в шоке
Aleksey
я так то соглсен что приложение ничего не должно знать о совем окружении
Aleksey
перемнные окружения прочитала и в днс сходило
Aleksey
и пошло работать
yopp
да, именно
Aleksey
однако это не совсем так давай по правде
yopp
почему не совсем так?
Aleksey
потому что возможны варианты когда приложение приходится затачивать под докер
An7on
да, важное уточнение, я не дергаю docker exec из контейнера, я дергаю метод запуска через http (которые единый у всех сервисов со статой)
Aleksey
например просто взять и запилить приложение которое бы нормально жрало конфиг не только из переменных окружения уже задачка