I did not follow the upgrade tutorial for 16.04 → 18.04 → 20.04 entirely because I have some minor adjustments on the server that were blocking the upgrade. Also, there was a minor issue with docker in the past, where I edited the file /etc/apt/sources.list.d/docker.list so this whole problem was my fault 🙂
@relink Cloudron does not work without a domain name. Many features like DNS integration, certificate management, reverse proxy setup etc all require a domain name.
Maybe you can try a setup like this:
Pick an imaginary domain name like relink.home
Choose the noop (only for development) DNS provider.
In Advanced section, choose Self signed certificates
In your router/DNS, just add entries for *.relink.home and relink.home to the server's IP. Alternately, add those entires to the /etc/hosts of your PC. You should then be able to reach, my.relink.home and install apps.
@CarbonBee Did I understand correctly that the DNS of cloudron A and Cloudron B are different above?
If so, the behavior is expected (not saying it is correct or even good). Currently, there is no easy way to easily 'migrate' domains - it is only easy to migrate a Cloudron from one server to another provided that all the DNS remains the same.
Can you explain your use case a bit more so we can try to come up with a solution together? I guess you are trying to test your backups? How can we make this work when Cloudron has multiple domains? Once you restore to another server, Cloudron will do the DNS setup of apps automatically and it will end up re-configuring the DNS of the apps to point to this new server.
@robw Sorry for the delayed response, we are just coming back from vacation and catching up on support tickets.
If I understand correctly, the Cloudron server has a different outbound IP than the one it detects. We have a custom endpoint (https://api.cloudron.io/api/v1/helper/public_ip) which helps us detect the IP of a server but I guess this detection goes wrong because of your setup.
To fix/workaround this: In the domain setup wizard, you can simply choose "no-op" as the DNS provider. With this provider, all DNS checks are disabled and as long as the domain somehow is able to resolve and reach your cloudron, it should all work. Another thing is that port 80 needs to be reachable as well for Let's Encrypt to work. If this is not possible, you can select 'Self Signed Certs' in the Advanced section of the domain UI.
@edapm yes Cloudron will work great on a home server setup. Both @girish and I are using that for our personal Cloudron. I guess we should update that blog post, but generally nothing really has changed to impact that.
running on bare metal is totally fine. For the setup within your network behind the router, please make sure that at least port 80 and 443 are forwarded. Port 80 is required to obtain LetsEncrypt SSL certificates. Otherwise please check the logs with journalctl -u box when performing the dns setup on your Cloudron, this should show for which IP it is waiting for the DNS records to be in-sync. Possibly it is checking for the wrong (private) IP.
Further when using Cloudrflare, please note that currently Cloudron does not support installing apps that are proxied via Cloudflare. Cloudflare backend only sets up the DNS via Cloudflare API and expects website traffic to be unproxied.