Configure production backends and nginx for high availability electrs

This commit is contained in:
wiz 2021-01-30 22:59:56 +09:00
parent c5c2222b8c
commit 42ad068dd2
No known key found for this signature in database
GPG Key ID: A394E332255A6173
4 changed files with 47 additions and 25 deletions

View File

@ -14,7 +14,7 @@
"PASSWORD": "bar"
},
"ESPLORA": {
"REST_API_URL": "http://[::1]:3001"
"REST_API_URL": "http://127.0.0.1:3001"
},
"DATABASE": {
"ENABLED": true,

View File

@ -13,7 +13,7 @@
"PASSWORD": "bar"
},
"ESPLORA": {
"REST_API_URL": "http://[::1]:3000"
"REST_API_URL": "http://127.0.0.1:3000"
},
"DATABASE": {
"ENABLED": true,

View File

@ -14,7 +14,7 @@
"PASSWORD": "bar"
},
"ESPLORA": {
"REST_API_URL": "http://[::1]:3002"
"REST_API_URL": "http://127.0.0.1:3002"
},
"DATABASE": {
"ENABLED": true,

View File

@ -58,6 +58,10 @@ http {
geo $limited_ip {
default 1;
127.0.0.1 0;
103.99.170.201 0;
103.99.170.202 0;
2401:b140:1::92:201 0;
2401:b140:1::92:202 0;
}
map $limited_ip $limited_ip_key {
1 $binary_remote_addr;
@ -127,35 +131,51 @@ http {
~*^zh zh;
}
upstream electrs-mainnet {
server [2401:b140:1::100:220]:3000 fail_timeout=0s max_fails=0;
server [2401:b140:1::100:210]:3000 backup;
}
server {
listen 127.0.0.1:3000;
access_log /dev/null;
location / {
proxy_pass http://electrs-mainnet;
}
}
upstream electrs-liquid {
server [2401:b140:1::100:220]:3001 fail_timeout=0s max_fails=0;
server [2401:b140:1::100:210]:3001 backup;
}
server {
listen 127.0.0.1:3001;
access_log /dev/null;
location / {
proxy_pass http://electrs-liquid;
}
}
upstream electrs-testnet {
server [2401:b140:1::100:220]:3002 fail_timeout=0s max_fails=0;
server [2401:b140:1::100:210]:3002 backup;
}
server {
listen 127.0.0.1:3002;
access_log /dev/null;
location / {
proxy_pass http://electrs-testnet;
}
}
server {
listen 80;
server_name mempool.space mempool.ninja bsq.ninja node100.bitcoin.wiz.biz;
server_name mempool.space mempool.ninja node100.bitcoin.wiz.biz;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
server_name bsq.ninja;
ssl_certificate /usr/local/etc/letsencrypt/live/bsq.ninja/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/bsq.ninja/privkey.pem;
include /usr/local/etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /usr/local/etc/letsencrypt/ssl-dhparams.pem;
set $redirect_uri https://mempool.space/bisq;
if ($uri = /tx.html) {
set $redirect_uri https://mempool.space/bisq/tx/$arg_tx;
}
if ($uri = /txo.html) {
set $redirect_uri https://mempool.space/bisq/tx/$arg_txo;
}
if ($uri = /Address.html) {
set $redirect_uri https://mempool.space/bisq/address/$arg_addr;
}
return 301 $redirect_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name node100.bitcoin.wiz.biz;
ssl_certificate /usr/local/etc/letsencrypt/live/node100.bitcoin.wiz.biz/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/node100.bitcoin.wiz.biz/privkey.pem;
@ -167,6 +187,7 @@ http {
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name mempool.ninja;
ssl_certificate /usr/local/etc/letsencrypt/live/mempool.ninja/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/mempool.ninja/privkey.pem;
@ -179,6 +200,7 @@ http {
server {
listen 127.0.0.1:80;
listen 443 ssl default http2 backlog=1024;
listen [::]:443 ssl default http2 backlog=1024;
server_name mempool.space;
ssl_certificate /usr/local/etc/letsencrypt/live/mempool.space/fullchain.pem;
ssl_certificate_key /usr/local/etc/letsencrypt/live/mempool.space/privkey.pem;