A Docker container to set up a proxy of Wikipedia using Caddy Server. Formerly known as wikimirror.
Idea from Matt Holt, the creator of Caddy Server.
This is a work in progress, the goal is to have a Docker container and a set of scripts so that it is super easy (and fast!) to deploy a Wikipedia proxy. Ideally, you should only need a domain and a server with Docker.
We are using Caddy with these additional plugins:
dns <provider>
, currently disabled (see below)http.ratelimit
, currently disabled (see below)http.cache
This should work like this:
- Set up a DNS record for your domain/subdomain;
- Deploy wikiproxy on a server that supports Docker;
- Enjoy your new proxy of Wikipedia.
Note that by default we are using OVH and the ovh
plugin to manage the DNS
validation by Let's Encrypt, your mileage may vary.
Here's a presentation about wikiproxy with a demo at the end, the presentation is in Italian, but you'll get the gist.
- building caddy with the
ratelimit
plugin fails. Afix
is being discussed on caddy's repo, but I wasn't able to make it work. Since the plugin is not really necessary, I removed it. - when visiting from mobile, the user gets redirected to
<lang>.m.wikipedia.org
regardless of the originating doman, the right thing to do would be redirect users to<lang>.m.<original_domain.tld>
). wikilinks point to the respective domain at wikipedia.org, this issue is tracked on Phabricator as bug T156847: Core should be aware of the domain it is running on and render mobile domains where necessary(wikilinks seems correct, even if the bug is still valid).- when caching is enabled, memory usage crawls up until the server is out-of-memory, see caddy-cache issue #42.
This project is released under the MIT license.