mirror of
https://github.com/RoboSats/robosats-web-host.git
synced 2025-07-17 08:13:31 +00:00
Add Tor
This commit is contained in:
@ -8,15 +8,16 @@ Clone https://github.com/RoboSats/robosats on a searate folder
|
||||
|
||||
````
|
||||
cd robosats
|
||||
docker run -d --name pages --restart always -p 4000:4000 pages
|
||||
docker run -d --name pages --restart always -p 4000:4000 pages # Docs
|
||||
cd web
|
||||
docker composer up -d
|
||||
cd ../nodeapp
|
||||
docker composer up -d
|
||||
docker composer up -d # Tor Frontend
|
||||
cd ../nodeapp
|
||||
docker composer up -d # Clearnet Frontend
|
||||
````
|
||||
|
||||
From this folder
|
||||
|
||||
````
|
||||
# Make sure to manually setup certbot before
|
||||
docker composer up -d
|
||||
````
|
@ -12,6 +12,12 @@ services:
|
||||
- /etc/letsencrypt/:/etc/nginx/ssl/:ro
|
||||
network_mode: host
|
||||
command: "/bin/sh -c 'while :; do sleep 6h & wait $${!}; nginx -s reload; done & nginx -g \"daemon off;\"'"
|
||||
tor:
|
||||
build: ./tor
|
||||
restart: always
|
||||
volumes:
|
||||
- ./tor/data:/var/lib/tor
|
||||
- ./tor/torrc:/etc/tor/torrc
|
||||
certbot:
|
||||
image: certbot/certbot:latest
|
||||
restart: always
|
||||
|
20
tor/Dockerfile
Normal file
20
tor/Dockerfile
Normal file
@ -0,0 +1,20 @@
|
||||
FROM alpine:3
|
||||
|
||||
RUN apk --no-cache --no-progress add tor=~0.4
|
||||
|
||||
EXPOSE 9001 9050
|
||||
|
||||
# hadolint ignore=DL3002
|
||||
USER root
|
||||
ARG LOCAL_USER_ID=9999
|
||||
ENV TOR_DATA=/var/lib/tor
|
||||
|
||||
# Add useradd and usermod
|
||||
# Create user account (UID will be changed in entrypoint script)
|
||||
RUN apk --no-cache --no-progress add shadow=~4 sudo=~1 && \
|
||||
useradd -u $LOCAL_USER_ID --shell /bin/sh -m alice && \
|
||||
usermod -g alice tor
|
||||
|
||||
COPY entrypoint.sh /root/entrypoint.sh
|
||||
|
||||
ENTRYPOINT [ "/root/entrypoint.sh" ]
|
0
tor/data/.gitkeep
Normal file
0
tor/data/.gitkeep
Normal file
13
tor/entrypoint.sh
Executable file
13
tor/entrypoint.sh
Executable file
@ -0,0 +1,13 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
# Change local user id and group
|
||||
usermod -u 1000 alice
|
||||
groupmod -g 1000 alice
|
||||
|
||||
# Set correct owners on volumes
|
||||
chown -R tor:alice /var/lib/tor
|
||||
chown -R :alice /etc/tor
|
||||
chown -R alice:alice /home/alice
|
||||
|
||||
exec sudo -u tor /usr/bin/tor
|
17
tor/torrc
Normal file
17
tor/torrc
Normal file
@ -0,0 +1,17 @@
|
||||
Log notice file /var/log/tor/notices.log
|
||||
|
||||
## The directory for keeping all the keys/etc. By default, we store
|
||||
## things in $HOME/.tor on Unix, and in Application Data\tor on Windows.
|
||||
DataDirectory /var/lib/tor
|
||||
DataDirectoryGroupReadable 1
|
||||
|
||||
## Enable ControlPort
|
||||
ControlPort 9051
|
||||
CookieAuthentication 1
|
||||
CookieAuthFileGroupReadable 1
|
||||
CookieAuthFile /var/lib/tor/control_auth_cookie
|
||||
|
||||
# Robosats LND Testnet Onion Service
|
||||
HiddenServiceDir /var/lib/tor/robosats/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 80 127.0.0.1:8080
|
Reference in New Issue
Block a user