Сохраняя сразу в s3 хранилище, увеличиваешь стоимость в ~два раза (каждый файл будет загружен и выгружен, т.е. дважды), а у амазона к примеру стоимость сетевого трафика грустная. И да, проверить по кусочкам файл не получится, антивирусу файл нужен целиком. В принципе на сколько я знаю есть s3fs-fuse - файловая система где файлы грузятся с s3 прозрачно, возможно, если антивирус не проверяет все типы файлов, а проверяемый является архивом, то это может дать какой то бонус, но нужно еще удостовериться что эта файловая система так умеет... да и не стоит так усложнять все.
Оперативка дороже диска, примерно на порядок (особенно с ростом размера файлов), с другой стороны до сотен мегабайт хватит держать файл в оперативке. Не вижу особой проблемы складывать файл на диск, проверять его и только после этого заливать в хранилище. Поэтому складывай на диск, проверяй, можешь параллельно запустить сохранение в s3 (потом прервешь или удалишь загруженное, если обнаружишь вирус).
docker не про безопасность а про изоляцию (для организации специфический версий библиотек), он не нужен именно для проверки файла на вирусы