Reverse Proxy setup on Pi3

I see a few problems here.

Firstly, you’re proxying from /plex under example.com/plex, and you have no root in this definition block. That means to be routed to the upstream you need to request example.com/plex/plex, which I doubt is intended behaviour. A request for example.com/plex will be 404’d.

You could just throw all these proxies in the same definition block, no need for labels with subfolders.

example.com {
	root /var/www/html
	tls admin@example.com
	proxy /dsm upstream:5001 {
		transparent
		websocket
	}
	proxy /homeassistant upstream:5123 {
		transparent
		websocket
	}
	...
}

Secondly, Plex isn’t going to play nicely under /plex. It wants /web and a whole lot of other folders too. My strong suggestion is to give it the site root of a subdomain instead. You might have some luck getting it working, but it will be a complicated setup.