diff --git a/README.md b/README.md index 367c95d..9169b99 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ## Overview - + vspd is a from scratch implementation of a Voting Service Provider (VSP) for the Decred network. diff --git a/docs/deployment.md b/docs/deployment.md index a52f98d..7134a6a 100644 --- a/docs/deployment.md +++ b/docs/deployment.md @@ -4,6 +4,10 @@ This guide is deliberately written at a high level and with minimal details because it is assumed that VSP operators will already have a level of familiarity with Decred software and a level of sysadmin experience. +

+ +

+ ## Prerequisites ### Build from source @@ -45,7 +49,7 @@ front-end server must be able to reach each instance of dcrwallet over RPC. The front-end server is where vspd will be running. A webserver (eg. nginx) should be configured with SSL and used to proxy requests from the internet to -vspd. +vspd. **Do not run a voting wallet on your webserver.** 1. Start an instance of dcrd on this server with transaction index enabled (`--txindex`). dcrd is used for fishing ticket details out of the chain, for @@ -59,9 +63,9 @@ vspd. 1. A vspd database must be initialized before vpsd can be started. To do this, provide vspd with the xpub key it should use for collecting fees: - ```no-highlight - $ vspd --feexpub=tpubVppjaMjp8GEW... - ``` + ```no-highlight + $ vspd --feexpub=tpubVppjaMjp8GEW... + ``` 1. Once the database is initialized, vspd can be started for normal operation by running it without the `--feexpub` flag. diff --git a/docs/img/architecture-source.md b/docs/img/architecture-source.md new file mode 100644 index 0000000..e8206aa --- /dev/null +++ b/docs/img/architecture-source.md @@ -0,0 +1,38 @@ +Below is the source for architecture.png in mermaid.js syntax. + +Can be rendered with any mermaid.js deployment, for example . + +```no-highlight +%%{init:{ + "theme": "neutral", + "themeVariables": { + "fontSize": "16px", + "clusterBkg": "#E9F8FE", + "clusterBorder": "#3D5873", + "mainBkg": "#2DD8A3", + "primaryColor": "#2970FF" + } +}}%% + +graph LR + +subgraph Front-end Server + nginx(nginx) --> vspd(vspd) + vspd --> dcrd0(dcrd) +end + +subgraph voting3 [Voting Server 3] + dcrwallet3(dcrwallet) --> dcrd3(dcrd) +end + +subgraph voting2 [Voting Server 2] + dcrwallet2(dcrwallet) --> dcrd2(dcrd) +end + +subgraph voting1 [Voting Server 1] + dcrwallet1(dcrwallet) --> dcrd1(dcrd) +end + +vspd ----> dcrwallet1 & dcrwallet2 & dcrwallet3 +web(Internet
Traffic) ---> nginx +``` diff --git a/docs/img/architecture.png b/docs/img/architecture.png new file mode 100644 index 0000000..c45a5ef Binary files /dev/null and b/docs/img/architecture.png differ diff --git a/docs/stakey.png b/docs/img/stakey.png similarity index 100% rename from docs/stakey.png rename to docs/img/stakey.png