docker-compose up
нужно вызывать с параметром --scale my_app=16
. В результате будет создано шестнадцать контейнеров, каждый из которых имеет уникальный IP адрес, причем назначаются эти адреса произвольно - пытаться вручную прописывать их в конфиге Nginx неразумно. Сам docker-compose балансировать запросы не умеет, соответственно параметр ports: HOST:CONTAINER
использовать тоже не получится.Есть ещё одна вещь, которую можно реализовать по разному - базовая единица измерения. В приведенной выше реализации поле foodstuff_unit в модели DishIngredient опционально: если единица измерения не выбрана (foodstuff_unit==null), то подразумеваются граммы. Вместо этого для каждого продукта при создании можно автоматически добавлять базовую единицу измерения в FoodstuffUnit и убрать поле foodstuff из DishIngredient, но оба решения имеют свои плюсы и минусы.
>>> hours, minutes, seconds = 4, 32, 1
>>> f'{hours}:{minutes}:{seconds}'
'4:32:1'
>>> f'{hours:02}:{minutes:02}:{seconds:02}'
'04:32:01'
https://interface31.ru/tech_it/2013/10/osobennosti...