taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit 36eb461591c2745f1514286f2a6fd7895801b5d1
parent 3d5accf0aed02c7e667a98ebd4a375aaae75e848
Author: MS <ms@taler.net>
Date:   Mon,  6 Mar 2023 13:40:31 +0100

NLnet docs (Docker setup).

Diffstat:
Mlibeufin/local-currencies-tutorial.rst | 57+++++++++++++++++++++++++++++++++++++++++----------------
1 file changed, 41 insertions(+), 16 deletions(-)

diff --git a/libeufin/local-currencies-tutorial.rst b/libeufin/local-currencies-tutorial.rst @@ -50,7 +50,7 @@ password as ``secret``. .. code-block:: console $ export LIBEUFIN_SANDBOX_ADMIN_PASSWORD=secret - $ libeufin-sandbox serve + $ libeufin-sandbox serve --port 5016 If Sandbox is running, jump to `this part <after-installation_>`_. @@ -79,28 +79,53 @@ Now build the image with the following command. $ docker build -t nlnet . If the build step went well, the following command -should suffice to start Sandbox and bind it to the -host's port 5000. +should suffice to start Sandbox and NGINX, by mapping +the host's 8080 port to the container's 80. .. code-block:: console + $ export LIBEUFIN_EXPOSED_PORT=8080 + $ docker run \ + -e LIBEUFIN_EXPOSED_PORT=$LIBEUFIN_EXPOSED_PORT \ + -p $LIBEUFIN_EXPOSED_PORT:80 \ + -it nlnet - $ docker run -p 5000:5000 -v libeufin_data:/libeufin-data -it nlnet +The previous command uses a default admin password of 'admin'. +Do **CHANGE** the admin password in a production scenario. The +following command shows how to start the services with custom +values. -The previous command uses a default admin password of -'admin' and the NB currency. Do **CHANGE** the admin -password in a production scenario. The following command -shows how to start the Sandbox with custom administrator -password and currency (defaults to EUR otherwise). +.. note:: + Start the services this way to provide the environment + suitable for this tutorial. .. code-block:: console - $ export MY_PASSWORD=secret - $ docker run -e LIBEUFIN_SANDBOX_ADMIN_PASSWORD=$MY_PASSWORD -e CURRENCY=NB -v libeufin_data:/libeufin-data -p 5000:5000 -it nlnet + $ export MY_ADMIN_PASSWORD=secret + $ export LIBEUFIN_EXPOSED_PORT=8080 + $ docker run \ + -e LIBEUFIN_SANDBOX_ADMIN_PASSWORD=$MY_ADMIN_PASSWORD + -e CURRENCY=NB \ + -v libeufin_data:/libeufin-data \ + -p $LIBEUFIN_EXPOSED_PORT:80 \ + -p 5016:5016 \ + -it nlnet + +In the example above, Docker: + +0. Sets the admin password to *secret* +1. Sets the currency to *NB* +2. Stores the database in a *volume*. This helps to + share the database between containers. +3. Maps the host's 8080 to the container's 80 port. +4. Maps the host's 5016 to the container's 5016 port. + That lets the CLI reach Sandbox inside the container, + and therefore run the tutorial. +By success, Web browsers get the UI by visiting localhost:8080! -This setup stores the database in a Docker *volume*. The following -command therefore resets all the data stored by LibEuFin. +The following command shows how to delete the database, +by deleting its volume. .. code-block:: console @@ -115,11 +140,11 @@ documentation for further information. If Sandbox is running ===================== -Sandbox should now be reachable on the port 5000. Check it with: +Sandbox should now be reachable on the port 5016. Check it with: .. code-block:: console - $ curl http://localhost:5000 + $ curl http://localhost:5016 If Sandbox is correctly running, it should respond with a greeting message. At this point, the administrator can add a new merchant to the bank with the @@ -135,7 +160,7 @@ following command. export LIBEUFIN_SANDBOX_USERNAME=admin export LIBEUFIN_SANDBOX_PASSWORD=secret - export LIBEUFIN_SANDBOX_URL=http://localhost:5000/ + export LIBEUFIN_SANDBOX_URL=http://localhost:5016/ export LIBEUFIN_NEW_CIRCUIT_ACCOUNT_PASSWORD=shop-secret libeufin-cli \