Partitioning is one of those decisions that is cheap to make and expensive to revisit. The rule that has served best is to separate anything whose growth you do not control from anything the system needs in order to boot. Logs, caches, container images and user uploads all belong in the first category.