1. Если docker на сервере стоит за nginx или другой проксей, там может быть выставлено ограничение на ответ бэкенда (у nginx по умолчанию 30 сек), после чего соединение рвется, а клиент получает 504.
2. aiohttp применен не к месту, вызываемая здесь
https://github.com/rahiel/open_nsfw--/blob/master/... функция classify() — не асинхронная и будет блокировать процесс, до тех пор, пока не завершится. Одним словом, у вас обычное однопоточное приложение, из коробки несколько одновременных запросов такое решение обработать не сможет. Нужно либо запускать несколько контейнеров, с балансировщиком перед ними, либо как-то менять подход, например запускать классификатор в отдельном пулле процессов через
loop.run_in_executor() или разнести API и классификатор в разные сервисы, поставив между ними очередь сообщений.