Easily run a hidden service inside the Tor network with this container
Generate the skeleton configuration for you hidden service, replace for your hidden service pattern name. Example, if you want to your hidden service contain the word 'boss', just use this word as argument. You can use regular expressions, like
Create an container named 'hiddensite' to serve your generated hidden service
Example
Let's create a hidden service with the name beginning with strm.
Wait to the container image be downloaded. And them we can generate our site skeleton:
Now we have our skeleton generated, we can run the container with:
And you have the service running ! :)
Troubleshoot
Build
docker build -t strm/tor-hiddenservice-nginx .
Run
docker run -d --restart=always --name hiddensite
-v $(pwd)/web:/web strm/tor-hiddenservice-nginx
Shell
docker run -it --rm -v $(pwd)/web:/web
--entrypoint /bin/bash strm/tor-hiddenservice-nginx
Generate the skeleton configuration for you hidden service, replace for your hidden service pattern name. Example, if you want to your hidden service contain the word 'boss', just use this word as argument. You can use regular expressions, like
^boss
, will generate an address wich will start with 'boss'. Be aware that bigger the pattern, more time it will take to generate it.docker run -it --rm -v $(pwd)/web:/web \
strm/tor-hiddenservice-nginx generate <pattern>
docker run -d --restart=always --name hiddensite -v $(pwd)/web:/web \
strm/tor-hiddenservice-nginx
Example
Let's create a hidden service with the name beginning with strm.
docker pull strm/tor-hiddenservice-nginx
$docker run -it --rm -v $(pwd)/web:/web strm/tor-hiddenservice-nginx generate ^strm
[+] Generating the address with mask: ^strm
[+] Found matching domain after 137072 tries: strmfyygjp5st54g.onion
[+] Generating nginx configuration for site strmfyygjp5st54g.onion
[+] Creating www folder
[+] Generating index.html template
docker run -d --restart=always --name hiddensite \
-v $(pwd)/web:/web strm/tor-hiddenservice-nginx
- 403 error on nginx, check your directory permissions and folder permissions. Nginx run as "hidden" user, his UID is 666, just check if you give this user access to the /web/www folder (in the case the folder mapped to it).
Build
docker build -t strm/tor-hiddenservice-nginx .
Run
docker run -d --restart=always --name hiddensite
-v $(pwd)/web:/web strm/tor-hiddenservice-nginx
Shell
docker run -it --rm -v $(pwd)/web:/web
--entrypoint /bin/bash strm/tor-hiddenservice-nginx