diff --git a/README.md b/README.md index e48ab55..b360fa4 100644 --- a/README.md +++ b/README.md @@ -10,8 +10,7 @@ Simple Docker container to run a Tor node. - -# Quick reference +### Quick reference - **Maintained by**: [Sven Gottwald](https://github.com/svengo/) @@ -26,15 +25,15 @@ Simple Docker container to run a Tor node. [Tor Project](https://www.torproject.org/) -# Supported tags and corresponding `Dockerfile` links +### Supported tags and corresponding `Dockerfile` links + - [`latest`, `0.4.8.11`](https://github.com/svengo/docker-tor/blob/025abed5929d69e35e646dac81d32795ab2c6dce/Dockerfile) I will regularly rebuild the image to include updated Alpine packages with important security fixes. +## How to use this image -# How to use this image - -## Start a simple Tor node +### Start a simple Tor node This command will start a Tor node and open ports 9001 and 9030: @@ -42,7 +41,7 @@ This command will start a Tor node and open ports 9001 and 9030: docker run -d -p 9001:9001 -p 9030:9030 --name tor svengo/tor ``` -## Data storage +### Data storage Data is stored in an anonymous volume that is mounted on ``/data`` (see docker inspect for more information). You can use a host volume to store the data in a specific directory on the host. The directory could exist, the permissions are handled by the container. @@ -52,7 +51,7 @@ Start the container: docker run -d -p 9001:9001 -p 9030:9030 --name tor -v /data/tor:/data svengo/tor ``` -## Basic configuration +### Basic configuration Use environment variables for basic configuration. The contents of the environment variables are used to build `/etc/tor/torrc-defaults`. For more advanced configuration you can edit the `/data/torrc` configuration file directly. @@ -60,31 +59,31 @@ Use environment variables for basic configuration. The contents of the environme docker run -d -p 9001:9001 -p 9030:9030 --name tor -v /data/tor:/data -e "NICKNAME=MyDockerTorNode" -e "CONTACTINFO=foo@example.com" svengo/tor`` ``` -### Docker Compose +#### Docker Compose You can use [docker-compose.yml](https://github.com/svengo/docker-tor/blob/main/docker-compose.yml). Don't forget to edit the file to suit your needs. -### Environment Variables +#### Environment Variables svengo/tor uses several environment variables to generate the ``torrc-defaults``-file, the variables are set to reasonable defaults (see below). You can edit ``/data/torrc`` to your needs after the first run. -#### ORPORT +##### ORPORT `ORPORT=[address:]PORT|auto [flags]` -Advertise this port to listen for connections from Tor clients and servers. This option is required to be a Tor server. Set it to "auto" to have Tor pick a port for you. Set it to 0 to not run an ORPORT at all. +Advertise this port to listen for connections from Tor clients and servers. This option is required to be a Tor server. Set it to "auto" to have Tor pick a port for you. Set it to 0 to not run an ORPORT at all. (Default: ``9001``) -#### DIRPORT +##### DIRPORT `DIRPORT=[address:]PORT|auto [flags]` -If this option is nonzero, advertise the directory service on this port. Set it to "auto" to have Tor pick a port for you. +If this option is nonzero, advertise the directory service on this port. Set it to "auto" to have Tor pick a port for you. (Default: ``9030``) -#### EXITPOLICY +##### EXITPOLICY `EXITPOLICY=policy,policy,…` @@ -92,7 +91,7 @@ Set an exit policy for this server. Each policy is of the form "accept[6]|reject (Default: ``reject *:* # no exits allowed``) -#### CONTROLPORT +##### CONTROLPORT `CONTROLPORT=PORT|unix:path|auto [flags]` @@ -102,7 +101,7 @@ se Tor to allow any process on the local host to control it. (Default: ``9051``) -#### HASHEDCONTROLPASSWORD +##### HASHEDCONTROLPASSWORD `HASHEDCONTROLPASSWORD=hashed_password` @@ -110,7 +109,7 @@ Allow connections on the control port if they present the password whose one-way (Default: ``16:872860B76453A77D60CA2BB8C1A7042072093276A3D701AD684053EC4C``) -#### NICKNAME +##### NICKNAME `NICKNAME=name` @@ -118,7 +117,7 @@ Set the server’s nickname to 'name'. Nicknames must be between 1 and 19 charac (Default: ``ididnteditheconfig``) -#### CONTACTINFO +##### CONTACTINFO `CONTACTINFO=email_address` @@ -128,7 +127,7 @@ You can use [Tor ContactInfo Generator](https://torcontactinfogenerator.netlify. (Default: ``Random Person ``) -#### MYFAMILY +##### MYFAMILY `MYFAMILY=node,node,...` @@ -138,12 +137,12 @@ When listing a node, it’s better to list it by fingerprint than by nickname: f (Default: *empty*) -#### ADDRESS +##### ADDRESS `ADDRESS=tor-node01.example.com` The IPv4 address of this server, or a fully qualified domain name of this server that resolves to an IPv4 address. You can leave this unset, and Tor will try to guess your IPv4 address. This IPv4 address is the one used to tell clients and other servers where to find your Tor server; it doesn't affect the address that your server binds to. It also seems to work with an IPv6 address. +## Feedback -# Feedback -Please report any problems as issues on github: https://github.com/svengo/docker-tor/issues +Please report any problems as issues on [github](https://github.com/svengo/docker-tor/issues).