jdoss / dockerhole

A DNS based ad / malware URL blocker in Docker!
MIT License
9 stars 0 forks source link

dockerhole

A DNS based ad and malware URL blocker in Docker. It will manage the downloading and parsing of known ad and malware URLs from third party sources. Currently it blocks ~750k unique domains. It also has support for custom domain allow and deny lists.

Quick Start

To get started quickly, make sure you have Docker installed for your OS.

Linux

If you are running a Linux distro with systemd the install_dockerhole script should get dockerhole installed and running for you without much hassle. To manually install you can follow these steps.

OS X

Windows

Todo.

Roadmap / Todo / Ideas

FAQs

Why a Fedora based docker image?

I chose Fedora for the base image as I am most familiar with Red Hat based Linux distributions. It should be pretty easy to get working on Debian 8 or Ubuntu 15.04.

Why Systemd... in a Docker container?

Not everyone hates the benevolent overlord known as PID 1. Systemd has everything needed to manage the dockerhole processes and systemd timers makes it easy trigger services to run even if your laptop has been sleeping for a few days.

Why not just use pi-hole or a browser based ad blocker like uBlock

I do most of my work on a laptop so an ad blocker that is tied to a single location such as Pi-Hole running on a Raspberry Pi at home doesn't really help keep ads off my browser. Also, some people don't use Chrome or Firefox so having an alternative method for blocking ads and malware domains is useful.

About

dockerhole was heavily inspired by the great Pi-Hole project. It was created and shoved into a docker container because I wanted to have better ad / malware blocking on my laptops while on the go.

I would also like to thank @mholt for his awesome Caddy Webserver.

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Copyright

The MIT License (MIT)

Copyright (c) 2016 Joe Doss