antiTree | posts and projects
posted on Jul 01, 2016

I’ve made a scalable way of building a fully private functioning tor network using Docker. Why give any back story, if it’s useful to you, then here you go:


Docker Hub:


All you really need to do is clone the git repo, build the image (or download from Docker Hub) and then spin up a network to your liking. What’s nice about this is you can use the docker-compose scale command to build any size network that you want. Eventually, when in the next version of Docker you’ll be able to scale across multiple hosting providers. But the current RC is too sketchy to invest any time in.

Anyways, here’s how to spin up 24 node network. That’s 15 exits, 5 relays, 1 client, and 3 dir authorities.

~~bash docker-compose up docker-compose sale relay=5 exit=15 ~~

Using It

To use this, there is a port listening on 9050 (you can change this in the docker-compose.yml file). If you point your browser to the Docker host running your containers and, in the same way you would connect to Tor, use it as a SOCKS5 proxy server, you will suddenly use it.

If you aren’t sure if it’s working, you check out the logs

~~bash docker-compose logs ~~ or

~~bash docker logs -f nameoftherelay ~~

Or, if you want to get cool information, try setting up a depictor container that will give you data about the DA’s.

Now what?

To answer the “now what?” question, this is a clean way of getting a tor network running so you can do your research, learn about how it works, modify configurations, run some third party tor software… whatever. If you’re not into this, there is always Shadow and Chutney or just manually configuring hosts/processes your self.