You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
monero.fail/README.md

68 lines
1.6 KiB
Markdown

# monero.fail
Monero node tracker.
Stores Monero (and Wownero) nodes for clearnet, Tor, and I2P.
## Setup
Tools you will need:
* Docker # apt-get install docker.io
* docker-compose # apt-get install docker-compose
* python3 (linux os will have this)
* python3-venv # apt-get install python3-venv
### Development
I have provided a `Makefile` with some helpful stuff...make sure to install `make` to use it.
The map portion of the service requires the GeoLite2 db...the `make setup` command fetches a copy via `wget`.
```
# install python virtual environment and install application dependencies
make setup
# default configs work out of the box, modify .env if needed
# setup .env
cp env-example .env
vim .env
# run services (tor, i2p, etc)
make up
# run development server
make dev
# access at http://127.0.0.1:5000
```
### Background Tasks
There are 3 things that need to run in the background:
* validating nodes that have been added
* checking existing node health
* scraping peer lists
I accomplish this via `crontab` and some management scripts. Ensure the i2p and tor containers are running (or just on the host) so that requests can be proxied.
```
docker-compose up -d
./manage.sh validate
./manage.sh check
./manage.sh get_peers
```
### Production
For production, update `SERVER_NAME` in `.env` to your production URL/domain. Use `manage.sh` (or provided `Makefile`) to serve the Flask process using Gunicorn.
```
./manage.sh prod
```
Runs the Gunicorn process on port 4000. Setup a web server to proxy requests to that port.
Kill production Gunicorn with `make kill`.