mirror of
https://github.com/aljazceru/cyphernode.git
synced 2026-02-02 11:14:20 +01:00
Fixed timeouts, messages and sync
This commit is contained in:
7
dist/setup.sh
vendored
7
dist/setup.sh
vendored
@@ -359,12 +359,15 @@ install_docker() {
|
||||
if [ ! -d $GATEKEEPER_DATAPATH ]; then
|
||||
step " [32mcreate[0m $GATEKEEPER_DATAPATH"
|
||||
sudo_if_required mkdir -p $GATEKEEPER_DATAPATH
|
||||
# prevent mounting installation.json as a directory
|
||||
sudo_if_required touch $GATEKEEPER_DATAPATH/installation.json
|
||||
next
|
||||
fi
|
||||
|
||||
if [ -d $GATEKEEPER_DATAPATH ]; then
|
||||
if [[ ! -f $GATEKEEPER_DATAPATH/installation.json ]]; then
|
||||
# prevent mounting installation.json as a directory
|
||||
sudo_if_required touch $GATEKEEPER_DATAPATH/installation.json
|
||||
fi
|
||||
|
||||
if [[ ! -d $GATEKEEPER_DATAPATH/certs ]]; then
|
||||
sudo_if_required mkdir -p $GATEKEEPER_DATAPATH/certs > /dev/null 2>&1
|
||||
fi
|
||||
|
||||
@@ -7,11 +7,13 @@
|
||||
"xpub": "Cyphernode can <font color='#00ff00'>derive</font> addresses from your <font underline='true'>default xPub key</font>. With that functionality, you don't have to provide your xPub every time you call the derivation endpoints.",
|
||||
"derivation_path": "Cyphernode can <font color='#00ff00'>derive</font> addresses from your <font underline='true'>default derivation path</font>. With that functionality, you don't have to provide your derivation path every time you call the derivation endpoints.",
|
||||
"proxy_datapath": "The proxy container (through where all the requests to Cyphernode goes) uses a sqlite3 database for its tasks. The DB will be mounted from a <font underline='true'>local path</font>, <font color='#00ff00'>easy to back up from outside Docker</font>. Please provide where you want the proxy DB to be stored locally.",
|
||||
"proxy_datapath_custom": "Provide the <font underline='true'>full path name</font> where the Proxy's files will be saved.",
|
||||
"gatekeeper_clientkeyspassword": "The Gatekeeper <font color='#00ff00'>authenticates and authorizes</font> (or not) all the requests to Cyphernode before delegating them (or not) to the proxy. Following the JWT (JSON Web Tokens) standard, it uses HMAC signature verification to allow or deny access. Signatures are created and verified using secret keys. We are going to generate the secret keys and keep them in an encrypted file. Please provide the <font underline='true'>encryption passphrase</font>.",
|
||||
"gatekeeper_clientkeyspassword_c": "Confirm <font underline='true'>encryption passphrase</font> for the Gatekeeper's keys file.",
|
||||
"gatekeeper_recreatekeys": "The Gatekeeper keys already exist, do you want to <font underline='true'>regenerate</font> them? This will overwrite existing ones.",
|
||||
"gatekeeper_recreatecert": "The Gatekeeper TLS (SSL) certificates already exist, do you want to <font underline='true'>regenerate</font> them? This will overwrite existing ones.",
|
||||
"gatekeeper_datapath": "The Gatekeeper's files (TLS certs, HMAC keys, Groups/API) will be stored in a container's mounted directory. Please provide the <font underline='true'>local mounted path</font> to that directory.",
|
||||
"gatekeeper_datapath_custom": "Provide the <font underline='true'>full path name</font> where the Gatekeeper's files will be saved.",
|
||||
"gatekeeper_edit_apiproperties": "<font color='#ff0000'>Not recommended</font>. If you know what you are doing, it is possible to manually edit the API endpoints/groups authorization.",
|
||||
"gatekeeper_apiproperties": "You are about to edit the api.properties file. The format of the file is pretty simple: for each action, you will find what access group can access it. <font color='#00ff00'>Admin</font> group can do what <font color='#00ff00'>Spender</font> group can, and <font color='#00ff00'>Spender</font> group can do what <font color='#00ff00'>Watcher</font> group can. <font color='#00ff00'>Internal</font> group is for the endpoints accessible only within the Docker Swarm, like the backoffice tasks used by the Cron container. The access groups for each API id/key are found in the <font color='#00ff00'>keys.properties</font> file.",
|
||||
"gatekeeper_sslcert": "** gatekeeper_sslcert **",
|
||||
@@ -25,14 +27,17 @@
|
||||
"bitcoin_prune_size": "Minimum <font underline='true'>size</font> is <font color='#ff33ff'>550</font> MB. Is the number of MB Bitcoin Core will allot for raw block & undo data.",
|
||||
"bitcoin_uacomment": "<font underline='true'>User Agent</font> string used by Bitcoin Core.",
|
||||
"bitcoin_datapath": "<font underline='true'>Path name</font> to where Bitcoin Core's data files (blockchain data, wallets, configs, etc.) are stored. Will be mounted in the Bitcoin node's container. If you already have a sync'ed node, you can copy data there to be used by the node, instead of resyncing everything. <font color='#ff0000'>NOTE</font>: only copy chainstate/ and blocks/ contents.",
|
||||
"bitcoin_datapath_custom": "Provide the <font underline='true'>full path name</font> where the Bitcoin Core's files will be saved.",
|
||||
"bitcoin_expose": "By default, Bitcoin node ports (RPC and protocol) won't be <font underline='true'>published</font> outside of Docker. Do you want to expose them so that your node can be accessed from outside of the Docker network?",
|
||||
"lightning_implementation": "Multiple <font underline='true'>LN implementations</font> exist. Please choose the one you want to use with Cyphernode.",
|
||||
"lightning_external_ip": "If you want you LN node to be accessible from the Internet, provide the <font underline='true'>IP address</font> that other LN nodes will use to connect to it. This is usually your router's public IP. <font color='#ff0000'>NOTE</font>: That won't make your router forward needed LN ports; you still have the responsability to configure and manage that part.",
|
||||
"lightning_nodename": "LN nodes have names. Choose the <font underline='true'>name you want</font> for yours.",
|
||||
"lightning_nodecolor": "LN nodes have colors. Choose the <font underline='true'>color you want</font> for yours in RGB format (RRGGBB). For example, pure red would be <font color='#ff33ff'>ff0000</font>.",
|
||||
"lightning_datapath": "<font underline='true'>Path name</font> to where LN's data files are stored. Will be mounted in the LN node's container.",
|
||||
"lightning_datapath_custom": "Provide the <font underline='true'>full path name</font> where the LN's files will be saved.",
|
||||
"lightning_expose": "By default, LN node ports won't be <font underline='true'>published</font> outside of Docker. Do you want to expose them so that your node can be accessed from outside of the Docker network?",
|
||||
"otsclient_datapath": "<font underline='true'>Full path</font> where the OTS files will be stored. This path will be mounted to the otsclient container which will create the OTS files when <font color='#00ff00'>stamping</font> and update them when <font color='#00ff00'>upgrading</font> stamps. It will also be mounted to the proxy container so that it can serve the <font color='#00ff00'>ots_getfile</font> and send the OTS files to clients.",
|
||||
"otsclient_datapath_custom": "Provide the <font underline='true'>full path name</font> where the OTS files will be saved.",
|
||||
"installer_mode": "As of today, only one <font underline='true'>installation mode</font> is supported: <font color='#00ff00'>local docker (self-hosted)</font>. In the next release, we will support trivially installing Cyphernode on a <font color='#00ff00'>Lunanode VM (hosted at lunanode.com)</font>.",
|
||||
"installer_cleanup": "Do you want to <font underline='true'>remove</font> this configurator Docker image after installation? This would free about 150MB of disk space.",
|
||||
"docker_mode": "Cyphernode Docker services can be run using <font underline='true'>Docker Swarm</font> (https://docs.docker.com/engine/swarm/) or <font underline='true'>docker-compose</font> (https://docs.docker.com/compose/overview/). Both will work, some users prefer one to another depending on deployment types, scalability, current framework, etc. If you don't know and the last Bitcoin block mined has an odd height number, choose Swarm... or not.",
|
||||
|
||||
@@ -189,7 +189,7 @@ module.exports = {
|
||||
value: "_custom"
|
||||
}
|
||||
],
|
||||
message: prefix()+'Where do you want to store your lightning node data?'+utils._getHelp('otsclient_datapath'),
|
||||
message: prefix()+'Where do you want to store your OTS data?'+utils._getHelp('otsclient_datapath'),
|
||||
},
|
||||
{
|
||||
when: function(props) { return installerDocker(props) && props.features.indexOf('otsclient') !== -1 && props.otsclient_datapath === '_custom' },
|
||||
|
||||
@@ -21,6 +21,13 @@ docker stack deploy -c $current_path/docker-compose.yaml cyphernode
|
||||
docker-compose -f $current_path/docker-compose.yaml up -d --remove-orphans
|
||||
<% } %>
|
||||
|
||||
arch=$(uname -m)
|
||||
case "${arch}" in arm*)
|
||||
printf "\r\n\033[1;31mSince we're on a slow RPi, let's give Docker 30 more seconds before performing our tests...\033[0m\r\n"
|
||||
sleep 30
|
||||
;;
|
||||
esac
|
||||
|
||||
# Will test if Cyphernode is fully up and running...
|
||||
docker run --rm -it -v $current_path/testfeatures.sh:/testfeatures.sh \
|
||||
-v <%= gatekeeper_datapath %>:/gatekeeper \
|
||||
|
||||
Reference in New Issue
Block a user