commit 66415cd2dd5a1e13c7a1ceef58cf133cff3aa8c7
parent 233500933851e0ef900eeccfd6bd3088e769f128
Author: Javier Sepulveda <javier.sepulveda@uv.es>
Date: Mon, 4 Sep 2023 11:23:05 +0200
README - Adding save-good.sh tutorial - Mantis ID 7604
Diffstat:
| M | sandcastle/README | | | 63 | ++++++++++++++++++++++++++++++++++++++++++++++++++++----------- |
1 file changed, 52 insertions(+), 11 deletions(-)
diff --git a/sandcastle/README b/sandcastle/README
@@ -87,8 +87,6 @@ To purge all non-funded tipping reserves, run:
$ taler-harness deployment tip-cleanup --merchant-url https://backend.demo.taler.net/instances/survey/ --merchant-apikey=$MERCHANT_APIKEY
-
-
How to run
==========
@@ -157,6 +155,49 @@ The following command gives a shell to inspect the data volume:
The data is available under /data.
+How to save and restore Docker images
+=====================================
+
+When certain deployment is fully working on test.taler.net, and therefore is going
+to be deployed in demo.taler.net, you should save those docker working images, as
+mean of backup.
+
+How to save working Docker images
+---------------------------------
+
+To save each --good image of each component you can execute the script "save-good.sh" without any
+arguments. This script will create some tagged docker images with the current timestamp
+
+This way, if something goes wrong with newly created images, you can use these previous good images, to
+re-deploy the GNU Taler program.
+
+How to recover saved images
+---------------------------
+
+In order to use them, after the manual creation of the wrong ones, you should execute the
+script "restore-good.sh".
+
+Thus, to restore previously created images, you should provide a
+timestamp as an option, to the "restore-good.sh" script.
+
+Example: ./restore-good.sh 1693812987
+
+To get the timestamp (which was previously generated by save-good.sh), you can execute this command:
+
+docker images #having as result "taler_local/taler_base:good-$TIMESTAMP"
+
+Then whenever you know about the precise timestamp, you can type "./restore-good.sh <TIMESTAMP>"
+
+[*] - Warning
+
+This method of saving docker images and restoring them, won't work, if after executing
+save-good.sh, you do a server cleanup with "docker system prune -a or --all"
+
+Doing a "docker system prune" without the "-a" option, it's okay.
+
+Eventually as a future improvement, we might configure "docker registry", to
+store safely all these good and stable docker images.
+
Data removal
------------
@@ -209,20 +250,20 @@ Before deploying the sandcastle setup, you need to undertake certain replacement
the configuration file "config/deployment.conf".
currency = KUDOS (or the name of your currency)
-merchant-url = https://backend.yourdomain.com
-landing-url = https://yourdomain.com/
-blog-url = https://shop.yourdomain.com/
-donations-url = https://donations.yourdomain.com/
-survey-url = https://survey.yourdomain.com/
-sync-url = https://sync.yourdomain.com/
-bank-url = https://bank.yourdomain.com/
-bank-backend-url = https://bank.yourdomain.com/demobanks/default/
+merchant-url = https://backend.domain.tld
+landing-url = https://domain.tld/
+blog-url = https://shop.domain.tld/
+donations-url = https://donations.domain.tld/
+survey-url = https://survey.domain.tld/
+sync-url = https://sync.domain.tld/
+bank-url = https://bank.domain.tld/
+bank-backend-url = https://bank.domain.tld/demobanks/default/
After doing this, and assuming that TLS is already configured, you can use the file named
"nginx-example.conf" on the sandcastle directory, as a NGINX virtual host, replacing
the domain name "example.com" with your own domain name.
-You can use the the SED command to replace this automatically as this, being located within
+You can use the SED command to replace this automatically as this, being located within
the sandcastle directory beforehand:
sed -i "s/example.com/yourdomain.com/g" nginx-example.conf