Based on my current research, you'll want to go with Python's Django -- my first impressions are that it's pretty straightforward and more expandable than Flask (which is maybe a bit simple for your needs).
GCP and AWS have a massive list of solutions for quickly setting up webpages and adding code logic, but eventually you'll have to pay so these solutions are heavily dependent on starting budget.
If however you have time, and an old desktop for hosting all of this, you could choose a django-react-mongodb stack. Your front will likely be React based on the trends and a substantial community with a huge knowledge-base. If you're lazy you could also use S3 and boto3 to have a powerful and very-easy-to-integrate media storage. If you'd rather implement it yourself you might want to use mongodb -- keep in mind you'll have to host these services and if you end up in AWS/GCP/Azure, you've pretty-much justified using their storage solutions.