route txes through tor and i2p proxies (#29)
* route txes through tor and i2p proxies * include entry script * update docker-files with dependency order and use new monerod command * Update dockerfiles/i2p Co-authored-by: nahuhh <50635951+nahuhh@users.noreply.github.com> * Update dockerfiles/i2p Co-authored-by: nahuhh <50635951+nahuhh@users.noreply.github.com> * Update dockerfiles/i2p-entrypoint.sh Co-authored-by: nahuhh <50635951+nahuhh@users.noreply.github.com> * Update dockerfiles/monero-entrypoint.sh Co-authored-by: nahuhh <50635951+nahuhh@users.noreply.github.com> * Update dockerfiles/monero-entrypoint.sh Co-authored-by: nahuhh <50635951+nahuhh@users.noreply.github.com> * remove q install and dns, specify private ip for tor/i2p * fix ips * use ubuntu 22.04 for tor build * fix i2pd configs * adjust i2p config, no depends on monerod * use gunicorn for flask app, faster restart time --------- Co-authored-by: nahuhh <50635951+nahuhh@users.noreply.github.com>
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
version: "3.7"
|
||||
|
||||
volumes:
|
||||
grafana:
|
||||
prometheus:
|
||||
@@ -11,7 +9,14 @@ x-log-config: &log-config
|
||||
max-size: "50m"
|
||||
max-file: "20"
|
||||
|
||||
services:
|
||||
networks:
|
||||
tor_net:
|
||||
ipam:
|
||||
driver: default
|
||||
config:
|
||||
- subnet: "172.31.255.0/24"
|
||||
|
||||
services:
|
||||
prometheus:
|
||||
image: prom/prometheus:${PROM_TAG:-v2.36.0}
|
||||
command:
|
||||
@@ -20,11 +25,16 @@ services:
|
||||
- --storage.tsdb.retention.time=${PROM_RETENTION:-360d}
|
||||
container_name: monerod_prometheus
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
exporter:
|
||||
condition: service_started
|
||||
# ports:
|
||||
# - 127.0.0.1:9090:9090
|
||||
volumes:
|
||||
- prometheus:/prometheus
|
||||
- ./files/prometheus/config.yaml:/etc/prometheus/config.yaml:ro
|
||||
networks:
|
||||
- tor_net
|
||||
<<: *log-config
|
||||
grafana:
|
||||
user: "1000"
|
||||
@@ -53,6 +63,8 @@ services:
|
||||
GF_AUTH_DISABLE_LOGIN_FORM: "${GF_AUTH_DISABLE_LOGIN_FORM:-true}"
|
||||
GF_SECURITY_ADMIN_PASSWORD: "${GF_SECURITY_ADMIN_PASSWORD}"
|
||||
GF_SECURITY_ADMIN_USER: "${GF_SECURITY_ADMIN_USER}"
|
||||
networks:
|
||||
- tor_net
|
||||
<<: *log-config
|
||||
exporter:
|
||||
container_name: monerod_exporter
|
||||
@@ -60,10 +72,15 @@ services:
|
||||
context: .
|
||||
dockerfile: dockerfiles/exporter
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
monerod:
|
||||
condition: service_started
|
||||
# ports:
|
||||
# - 127.0.0.1:9000:9000
|
||||
command:
|
||||
- --monero-addr=http://monerod:${UNRESTRICTED_PORT:-18083}
|
||||
networks:
|
||||
- tor_net
|
||||
<<: *log-config
|
||||
nodemapper:
|
||||
container_name: monerod_nodemapper
|
||||
@@ -71,11 +88,41 @@ services:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dockerfiles/nodemapper
|
||||
depends_on:
|
||||
monerod:
|
||||
condition: service_started
|
||||
environment:
|
||||
NODE_HOST: monerod
|
||||
NODE_PORT: 18083
|
||||
# ports:
|
||||
# - 127.0.0.1:${MAPPER_PORT:-5000}:5000
|
||||
networks:
|
||||
- tor_net
|
||||
<<: *log-config
|
||||
tor:
|
||||
container_name: monerod_tor
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dockerfiles/tor
|
||||
restart: unless-stopped
|
||||
# ports:
|
||||
# - 127.0.0.1:9050:9050
|
||||
networks:
|
||||
tor_net:
|
||||
ipv4_address: 172.31.255.250
|
||||
<<: *log-config
|
||||
i2p:
|
||||
container_name: monerod_i2p
|
||||
build:
|
||||
context: .
|
||||
dockerfile: dockerfiles/i2p
|
||||
restart: unless-stopped
|
||||
# ports:
|
||||
# - 127.0.0.1:4447:4447
|
||||
# - 127.0.0.1:4444:4444
|
||||
networks:
|
||||
tor_net:
|
||||
ipv4_address: 172.31.255.251
|
||||
<<: *log-config
|
||||
monerod:
|
||||
container_name: monerod
|
||||
@@ -91,5 +138,24 @@ services:
|
||||
- 127.0.0.1:${ZMQ_PORT:-18082}:18082 # zmq
|
||||
- 127.0.0.1:${UNRESTRICTED_PORT:-18083}:18083 # unrestricted rpc
|
||||
command:
|
||||
monerod --data-dir=/data --p2p-bind-ip=0.0.0.0 --p2p-bind-port=18080 --rpc-restricted-bind-ip=0.0.0.0 --rpc-restricted-bind-port=18081 --zmq-rpc-bind-ip=0.0.0.0 --zmq-rpc-bind-port=18082 --rpc-bind-ip=0.0.0.0 --rpc-bind-port=18083 --non-interactive --confirm-external-bind --public-node --log-level=0 --enable-dns-blocklist --rpc-ssl=disabled --ban-list=/ban_list.txt
|
||||
- monerod
|
||||
- --data-dir=/data
|
||||
- --p2p-bind-ip=0.0.0.0
|
||||
- --p2p-bind-port=18080
|
||||
- --rpc-restricted-bind-ip=0.0.0.0
|
||||
- --rpc-restricted-bind-port=18081
|
||||
- --zmq-rpc-bind-ip=0.0.0.0
|
||||
- --zmq-rpc-bind-port=18082
|
||||
- --rpc-bind-ip=0.0.0.0
|
||||
- --rpc-bind-port=18083
|
||||
- --non-interactive
|
||||
- --confirm-external-bind
|
||||
- --public-node
|
||||
- --log-level=0
|
||||
- --rpc-ssl=disabled
|
||||
- --ban-list=/ban_list.txt
|
||||
- --tx-proxy=tor,172.31.255.250:9050,disable_noise,24
|
||||
- --tx-proxy=i2p,172.31.255.251:4447,disable_noise,24
|
||||
networks:
|
||||
- tor_net
|
||||
<<: *log-config
|
||||
|
||||
Reference in New Issue
Block a user