No public IP - caddy on VPS for domain name?

Discuss

I have had Yunohost running for years on my home server. I recently changed ISPs and now I don’t have a public IP address.

How do I run everything through Caddy on a VPS?

I have Caddy running on a VPS and have only gotten my docker containers (Immich & Jellyfin) working with my domain name. It’s easy with docker containers because I know what port they are running on.

#example of working domain --> tailscale --> docker reverse proxy
photos.arkadi.one {
        reverse_proxy http://100.120.115.30:2283
}
#works!

I’m not sure how to proxy the rest of the Yunohost apps on my server, especially the ones running on the root domain.

Ex: I have Nextcloud and Transmission installed on arkadi.one domain.
arkadi.one/nextcloud
arkadi.one/transmission

Also, a few of my Yunohost apps are running on their own subdomain, but they were setup through Yunohost when I had a public IP.

Does anyone have experience doing this?

I tried changing DNS settings on my registrar but it doesn’t seem to help.

@ 3600 IN A VPSPUBLICIP
* 3600 IN A VPSPUBLICIP

I tried stuff like this in Caddy but didn’t help. I looked in NGINX files on Yunohost to see what port things are hosted on, or the path they are on.

arkadi.one {
        reverse_proxy / http://100.120.115.30 {
                #transparent
                #insecure_skip_verify
        }
}
nextcloud.arkadi.one {
        root * http://100.120.115.30:/var/www/nextcloud/
        file_server
}
#also not working

Using curl gives me 308 permanent redirect?

curl -v arkadi.one/nextcloud
* Host arkadi.one:80 was resolved.
* IPv6: (none)
* IPv4: 138.2.124.17
*   Trying 138.2.124.17:80...
* Established connection to arkadi.one (138.2.124.17 port 80) from 192.168.200.198 port 37432 
* using HTTP/1.x
> GET /nextcloud HTTP/1.1
> Host: arkadi.one
> User-Agent: curl/8.21.0
> Accept: */*
> 
* Request completely sent off
< HTTP/1.1 308 Permanent Redirect
< Connection: close
< Location: https://arkadi.one/nextcloud
< Server: Caddy
< Date: Sat, 25 Jul 2026 04:58:24 GMT
< Content-Length: 0
< 
* shutting down connection #0

I’m no expert but I’ve learned a lot of this stuff through trial and error. There are too many variables here though, so I don’t know what I’m doing. There is registrar, ports, headers, nginx, caddy, VPS.

Any guidance anyone can give me?

I called my ISP and got them to give me a public IP address, so I haven’t “solved”…but I don’t have this problem anymore.