Максим Компаниец, явно nginx тут не виноват и нет смысла мучать его. Либо вовсе временно уберите его из цепочки.
В логи докера по умолчанию сыпятся обычно только из stdout. Нужно логи каждого сервиса писать туда, либо в файл/каталог примонтированный через volume в файловую систему хоста. Без логов можно продолжать угадывать очень-очень долго. Bad Gateway означает что ваш бекенд вернул ошибку
А ч о у вас там с числом воркеров в gunicorn? Не выжираются ли все доступные процессы?
Другой вариант - какие-то из запросов вводят ваш код в бесконечный цикл, что, опять же, приводит к выеданию всех доступных потоков в gunicorn.
В зависимости от OS, есть способы автоматизированной установки (autoinstall у Ubuntu, к примеру). Там можно на этапе установки указать в том числе и разбиение диска.
Для подготовки эталонного образа, а так же для создания новых машин из эталонного можно использовать hashicorp packer.
Андрей, с удобуной документацией не очень хорошо. Можно начать отсюда https://www.opennet.ru/docs/RUS/LARTC/x1589.html
Материалы можно найти по запросу "traffic shaper linux" или "traffic control linux".
Минимально я думаю вам хватит ограничить пропускную полосу для скачивания файлов в 95 Мбит
Вопрос про base64, в коде base85... А что вам нужно-то в конце концов? Какая задача решается? Лучше использовать base64 и не будет таких вопросов с кодировкой
tarp20, это вы нам скажите как оптимально. Сейчас это "как попало". А как надо? Меньше число коробок? Или коробки должны быть минимального размера? Или коробки должны быть одинакового размера? Или все и сразу?
В логи докера по умолчанию сыпятся обычно только из stdout. Нужно логи каждого сервиса писать туда, либо в файл/каталог примонтированный через volume в файловую систему хоста. Без логов можно продолжать угадывать очень-очень долго. Bad Gateway означает что ваш бекенд вернул ошибку