George
я уж не говорю, что если там реально отчеты, картинки и прочий генерируемый контент.... то его лучше не вольюмом, а куда-то еще вылить... но вопрос латентности доступа....
George
S3
да
George
ну, зачем? кто их процессит?
George
их же наверняка можно в вебсокет кидать, хотя я хз
George
или в посте пейлоадом
George
я просто не в курсе нынешних трендов
George
а потом класть в S3 😊 или в БД
George
блобом
Ivgenich
ну, зачем? кто их процессит?
Пока это тайна покрытая мраком. Проект новый и пилится на ходу новым разработчиком. У нас вообще все на питоне. А этот оказался битрицистом/пхпшником. Пилит отдельный проект. Типа партнерки.
George
я бы на пихтоне сделал. Там все понятно
Ivgenich
Ну и интеграция там с битрикс24 планируется. Потому проект ему отдали.
Ivgenich
А он в питон не умеет.
Ivgenich
Идея с разделением статики мне пока нравится. Посмотрю что где лежит.
Ivgenich
Спасибо!
inqfen
И сделайте на джанге
Ivgenich
Бггг. Я бы так и сделал. 😂
inqfen
Битрикс это же совсем пиздец
Ivgenich
Битрикс это же совсем пиздец
Пиздец. Но был в своё время внедрен в качестве crm.
George
Выгоните его
пока не поздно )
Nikita
Всем привет 😊 Ребят такой вопрос, в докере крутится апликуха на PHP. Для её полноценной работы надо поднять пару воркеров (php файлики запустить короче) Схема примерно такая, есть веб морда, и есть очередь, в веб морде что-то сделали, это попало в очередь и воркеры должны разгребсти. В чем проблема. Без докера если, я бы воркеры запихал в супервизор, чтобы они жили всегда. А как правильно сделать сейчас, я хз. Вот докер-композ version: "3.3" services: nginx: image: nginx restart: always php: build: ./docker/php restart: always mysql: image: mysql volumes: restart: always rabbit: image: rabbitmq restart: always redis: image: redis restart: always
Nikita
Поднимать супервизор внутри php контейнера странно. А пилить еще один контейнер с теми же зависимостями что и первый тоже не круто.
Nikita
Как сделать?
Nikita
Понравился подход что есть тут https://github.com/mcuadros/ofelia
Nikita
Но это аля крон, а нужен аля супервизор
Nikita
вообщем толи лыжы не едут, толи я что-то туплю.
Dmytro 🇺🇦
Но это аля крон, а нужен аля супервизор
Так воркеры поднимают отдельными контейнерами и работают они через мессендж-брокер.
Ren
Поднимать супервизор внутри php контейнера странно. А пилить еще один контейнер с теми же зависимостями что и первый тоже не круто.
А чем конкретно "не круто"? Слои кешируются же, можно попробовать сделать образ с supervisord и php, почему нет?
Nikita
Так воркеры поднимают отдельными контейнерами и работают они через мессендж-брокер.
Через брокер они и воркуют (кролик да) Просто пытаюсь понять как лучше поднять такую связку. С одной стороны воркер просто кусочек одной апликухи, с другой он требует себе зависимость в виде супервизора для нормальной работы.
Nikita
А супервизор в докер пихать вроде как моветон
Nikita
Вот и бьюсь как баран об новые ворота)
Ren
А супервизор в докер пихать вроде как моветон
Ну тогда без супервизора запускай контейнер с консюмером очереди
Nikita
Да, в соседнем чате дали хороший пример с мульти стейджом. Думаю так и сделаю
Nikita
php: build: context: ./ image: ./docker/php target: target1 restart: always worker: build: context: ./ image:./docker/php target: target2 restart: always command: php worker.php
George
во-первых, у тебя нет названия имиджа
George
это означает, что компоуз его сгенерирует автоматом и это будет белиберда
Dmytro 🇺🇦
И это не мультистейдж)
George
во-вторых, лучше собирать образы снаружи, docker build, а лучше buildah и прочие альтернативы
George
потому что это можно лучше контролировать
George
в четвертых, у тебя формат 3.3, хотя у тебя не сварм. Поставь 2.4
George
в пятых, у тебя нет порядка запуска сервисов
George
скажем, база не поднялась (точнее поднялся контейнер с базой, но он не отинитился) - чего с воркерами будет?
George
реализовать логику порядка можно либо внешним скриптом (bash? makefile?), либо собрать на хелсчеках (муторно), либо втыкать блоки wait_for в зависимые сервисы (тоже говно)
Nikita
Хм, т.е. depends_on: mysql Не хватит?
Nikita
во-вторых, лучше собирать образы снаружи, docker build, а лучше buildah и прочие альтернативы
Т.е. я где-то собрал образ, а потом в композе просто пишу image: блаблабла верно?
Dmytro 🇺🇦
Хм, т.е. depends_on: mysql Не хватит?
На первое время может хватить.
-
ч
George
Хм, т.е. depends_on: mysql Не хватит?
Нет, это depends_on : service_started
George
А не healthy
George
Разница понятна, надеюсь
Nikita
Понял
Nikita
Спасибо, буду копать
Nik
Народ, кто настраивал докер прокси в нексусе? level=info msg="Attempting next endpoint for pull after error: Get http://docker.autobp.foo.ru/v2/library/mysql/manifests/latest: no basic auth credentials"
Nik
При этом курлом этот url доступен. Не понимаю что ему не нравится
Slava
После перезагрузки постоянно отваливается контейнер, докер в процессах его отображает но по порту он недоступен. В чем может быть проблема ?
Anonymous
В логах что?
Maxim
хай, народ! подскажите, а при каких условиях docker может не юзать кеш слоёв при билде? т.е. даже лейблы не берутся из кеша. dockerfile типа того FROM centos:7 LABEL maintainer="e@mail.com" ...... ......
George
ну, ты удалил временные образы, например
George
или базовый изменился
George
говорят, что помогает стянуть старый целевой образ, а потом в docker build указать —cache-from и айди образа
Maxim
так, временные образы я специально не чистил. алгоритм следующий: 1. билд 2. пуш режистри 3. rmi сбилженый образ
Maxim
так, окей, только что попробовал не удалять, все равно не кешируется
George
но повторюсь, что если ты перетянул базовый образ, то привет