The answer is get a minimum linux image, add nginx or apache, and put your content on the relevant place. (Basically, your third option.)
Do not bother about the future of nginx. Changing the web server on that image is the easiest thing in the world.
Try to run something that requires php7 and something else that requires php8 on the same web server; or python 2 and python 3.
You actually can, but it’s not pretty.
(The thing about a declarative setup isn’t much of a difference, you can do it for any popular Linux distro.)