We've been waiting for new technology to relaunch our public instance services. Due to developments and AI scraper traffic on the rise, the upstream services such as Imgur and Reddit now aggressively block data center IPs. This makes our old approach of using serverless containers infeasible. In this blog post I will detail our new setup for hosting public services, with even more pieces under our control.
Bypassing IP blocks
Imgur and Reddit both employ aggressive IP blocking of common data center providers. You can no longer just deploy frontends like rimgo and redlib on any random cloud provider. To bypass these IP blocks, we take advantage of Mullvad VPN's SOCKS5 proxy feature. This allows us to create a pool of IP addresses that our frontends can rotate between. We do this using a TCP load balancer configured in Traefik. In the future, this will be improved to be smarter, dynamically changing the list of available VPN servers based on errors.
On the path to General Availability, we will work to improve and document this solution as part of our commitment to open source. While we believe the popularity of commercial VPN services will keep services from blocking them, this is not guaranteed and highlights why frontends are only a temporary solution. We must lead the transition to private and open source alternatives that respect their users.
On-premises hosting
With how common it is to host services on massive cloud providers such as Hetzner, we wanted to offer a distinct alternative. Our services are hosted on our own hardware in Canada, connected to gigabit fiber internet. As this is a residential connection, BunnyCDN is used as a WAF to protect against DDoS attacks and reduce load on our hardware, while improving speed. We chose BunnyCDN because they are a European provider. Cloudflare dominates in this space as an American company. With the current geopolitical climate, it is important to support alternatives and reduce dependence on American products.
BunnyCDN also allows us to serve media directly from the edge, meaning that for media-heavy frontends such as rimgo, your images are proxied at your closest edge location instead of at our server.
Owning our own hardware protects us from being banned from a cloud provider, an issue that has plagued the alternative frontend community. This has affected us in the past with our setup on another serverless container platform, and many others who were using Oracle Cloud's generous free tier.
New services
We are bringing back an official rimgo instance, in addition to hosting frontends developed by others in the community. We aim to be provide a fast and reliable service that you can depend on.
Launching now:
- rimgo (Official) - An alternative frontend for Imgur
- Redlib - An alternative frontend for Reddit
- Phantom - An alternative frontend for Fandom
Launching later this year:
- Container (Official, alpha) - An alternative frontend for Docker Hub
- Tubular (Official, alpha) - An alternative frontend for YouTube, based on Piped
- Due to the rapid nature of changes at YouTube and high bandwidth use, we may restrict or not offer this service publicly.
A new identity
These changes come with a new direction for our identity. We will be launching a new domain name and website to coincide with the full release of Public Services.
Now available in Beta
You can try Public Services now in beta.