hi everyone,
I was just about to self-host a Ghost blog but then was warned that my ISP might change my external IP address at any time, so I would need to pay for a static IP address.
Is that true?
(I’d not seen much about that in stuff I’ve looked up so far about self hosting)
You can use a ddns such as duckdns or host on github pages with jekyll or something
You don’t need one, but it does make things easier.
What you can use is something like Dynamic DNS to update your DNS record if your IP ever changes.
Surprised nobody has mentioned cloudflare ddns. If you registered your domain with cloudflare, you can use the api or qdm12’s (author of gluetun) ddns-updater to keep your A/AAAA records up to date.
As others have said, you can use dynamic DNS, but you also might have an IPv6 address that doesn’t change. Or maybe it does, you’ll have to check with your ISP. But that one can be set up as an AAAA record in your DNS.
Most ISPs support IPv6, but some don’t, so you might not be accessible to everyone without also having an A record.
I recommend afraid.org, you get everything that you need for free dynamic dns, and they’re a cool project so someday you may like to do even more with them or send them a little donation.
I started with noip first, and the monthly re-up was so annoying.
Seconded. Used their service for many years.
They are excellent
YunoHost has automatic DNS updates
https://doc.yunohost.org/admin/tutorials/domains/dns_dynamicip/
No, you don’t. Use Tailscale to expose your blog.
Wouldn’t that be just for me - in my Tailnet - rather than to the general public?
That doesn’t seem to be appropriate for a specific domain. Unless I’m reading it wrong.
We need to expose the Ghost blog on a specific subdomain of the domain we own ( blog.ourdomain.org )
doesn’t Tailscale Funnel assign a funky domain name rather than let you use your own?
AFAIK Tailscale has an option to expose certain ports to the internet.
I selfhost my blog without a static IP. You just need Dynamic DNS.
Keep in mind that your outbound bandwidth might be different from your inbound. I get 300mbps in, but only 5mbps out. It’s not noticeable during normal Internet use, but as you start sharing content publicly, limited bandwidth becomes really noticeable.
Don’t even need dynamic DNS. Just use ddclient to update your DNS record if your IP changes.
That’s called dynamic DNS (it’s the dd in ddclient).
Yes, but there used to be specific dynamic DNS providers or ones that advertised as that but you don’t specify need those now.
How are you hosting? And do you have a domain? Lot’s of good advice here, but knowing if you’re running on a Pi, in Docker, etc, would help others give you the easiest/best method.
In short, you do not need a static IP.
Hi, I’m using Docker - one container for Ghost and one for Nginx Proxy Manager.
I’ve decided to go with DDNS but am having trouble choosing a reliable free provider. I’ve seen Dynu.com recommended but that is not available in the dropdown list of servers in my router’s section on DDNS. Is that relevant?
Or would I just ignore the router settings and set it up some other way?
Cloudflare is a good choice. I used DNSExit for a while, and also NS1, but settled on Cloudflare. You don’t have to use their proxying, just DNS.
Here’s a Docker Compose for you that will set
myhost.mydomain.comto point to your public IP of wherever it is run:dyndns-cloudflare: image: oznu/cloudflare-ddns container_name: dyndns-cloudflare environment: - API_KEY=<key> - ZONE=mydomain.com - SUBDOMAIN=myhost - PROXIED=false restart: unless-stoppedI’m having a good experience with cloudflare, using ddclient on a cron job
To clarify: it doesn’t matter much what your router supports if you have a server with ddclient (possibly in Docker container). Then you can choose whatever provider you’d like, and there are tons of resources on ddclient.
If I install ddclient on my mini-pc is that what you mean by having a server with ddclient?
My Asus router is not shown in their docs as supported - does that matter?
Also - can I just keep using my current domain name registrar, and not use Cloudflare?
Yeah, you just need to set your DNS using Cloudflare. Your router doesn’t matter. Ddclient will get your external IP address, usually by querying an external server like ifconfig.me (this is all configurable), and then use the configured provider (e.g. cloudflare) to point the DNS records to your external IP. You need to configure your DNS registrar to use the Cloudflare nameservers for your domain. Then just regularly (daily) run ddclient, e.g. using a cronjob
Personally I would look at using a tunnel, something like Cloudflare tunnels (easy to setup, sorts dns out) but many here dislike Cloudflare for a lot of reasons. However the free plan allows you to get started, easily, and then once you are started and serving your blog you can look into other solutions, or failing that stay on Cloudflare. Other tunnels exist but if you have a domain, using cloudflare is the easiest imho to get started
Whether your ip changes frequently depends on your ISP, but it’s not necessary to have a static ip. My public IP changes about once a year, but I use my router to update my dns and make ally external services rely on DNS and not IP to connect.
You can also do this, look up “dynamic DNS”. You just need to register a DNS name (can be free) and set up the updates to make it accurate.
You could also put it on a cloud system and not worry about your local connection.
You come to a post on SELFHOSTED@lemmy.world… And downvote everyone posting relevant discussion then post “USE CLOUD”.
You can self host services on cloud servers.
Some of the other options are cloud flare tunnel or ddns that would give you static ip effect without static ip
It makes things easier, but you have options, such as:
- dynamic dns.
- Public reverse proxy or tunnel.
- Onion routing.
I just use github pages tbh. Free
I would stand up a VPS in a cloud provider








