Per https://meta.discourse.org/t/advanced-troubleshooting-with-docker/15927, the database is actually stored outside the container(s).
AFAIK the main advantage of separating containers (if you’re changing nothing else about the default install) is reducing downtime when you’re running ./launcher rebuild app. However it’s a bit outside my knowledge and not something I’ve attempted doing, so I wouldn’t be surprised if there were more reasons to do it.