This project provides a quick and easy way to evaluate the Unbound CASP solution. Unbound CASP is composed of several components that need to be setup to work properly. Therefore, this quick start solution is provided to enable you to launch CASP without any configuration using Docker.
Note: This project is intended to be used for POCs, demos and development.
Note: If you are trying to install the UKC vHSM Demo, you cannot run it and the CASP Express Deploy at the same time.
Use these instructions to get CASP running using Docker.
-
Complete the General Prerequisites.
-
If you are not registered for Docker, follow the registration process.
-
Contact Unbound and provide us with your Docker username to get access to the Docker images.
-
Install Docker.
- For Windows:
- Install Docker Desktop CE (community edition). It must include Docker Engine version 19.03 or newer. You can get the latest version from Docker.
- Use the default Docker settings during installation.
- For Linux:
- Follow the instructions to install Docker Compose.
- For Mac:
- Install Docker Desktop (community edition) v2.1.0.5 or newer. Follow the instructions to install Docker Desktop.
- For Windows:
-
Download or clone this repository from the main page or click here.
-
If you downloaded a compressed (.zip) file, uncompress it.
-
The download contains a folder called casp-docker. Open a terminal and navigate to the
casp-docker
folder.Note: All subsequent commands are run from a terminal from this directory.
-
Start Docker.
-
Set the memory limit for Docker to 6 GB.
-
Create a file called .env in the same folder as the repository. The .env file holds your access tokens (see Prerequisites).
Note: The file must not have any prefix, i.e. the file name must be .env. If you are on Windows and it doesn't let you create a file with this name, use .env. (with a period at the end) for the name, then click OK twice, and it will create the .env file.
Note: The file must be in the same folder as docker-compose.yml.
For example:
INFURA_PROJECTID=<Replace with Infura project ID> BLOCKSET_TOKEN=<Replace with Blockset access token> FIREBASE_TOKEN=<Replace with Firebase token provided by Unbound>
-
Check that Docker is running.
You can check if Docker is running with the command
docker info
. If it returns an error, then it is not running. Otherwise, it returns status information about the Docker installation. -
Run this command to log into Docker:
docker login
Enter the credentials that you created for the Docker Hub website.
After successful login you see:
Login Succeeded
-
Run Docker to create the CASP container:
Note: If you are restarting or trying to update CASP Express Deploy, refer to Restarting/Updating Docker.
docker-compose up
The setup takes several minutes to complete.
Everything is installed and working when you see this message:
casp-bot | Starting to approve operations
Congratulations! CASP is now running.
After installation, you can try some of these tasks:
- Explore the web interface
- Create and activate a mobile client
- Develop your own application using the CASP SDK
Open your browser and navigate to https://localhost/caspui
(for Windows) or https://<docker-ip-address>/caspui
(for Linux, where docker-ip-address is the server where you installed Docker). Use these credentials to log in:
- Username: so
- Password: Unbound1!
The Web UI provides the following screens:
- Accounts - provides information about your accounts, including the pending and total number of participants, vaults and operations.
- Users - lists all users for the account.
- Vaults - lists all vaults associated with the account.
- Operations - lists all quorum operations for the account.
- System - provides status information about various components in the system.
For more information on how to use the web interface, see CASP User Guide.
Information about installing the CASP mobile app can be found here.
You can use the CASP SDK to develop your own application. See the CASP Developers Guide for more information and a full API reference.
Also, refer to the CASP BYOW JS Demo for sample code.
To update and restart Docker:
- Ensure that the previous session is finished:
docker-compose down
- Get the latest files:
docker-compose pull
- Retart Docker:
docker-compose up
This release has these associated documents:
- CASP User Guide
- CASP Web UI - explore more about the WEb UI.
- CASP Mobile App - add more participants that use the CASP Mobile app.
- CASP Frequently Asked Questions
- CASP Developers Guide with API Reference
If you cannot open the CASP web console in your browser, you might have port 443 in use by another service.
You can change CASP web console port by editing docker-compose.yml
, and replacing the CASP export port with a different port.
For example, to change the port from 443 to 9443:
-
Change
"443:443"
to"9443:443"
. -
Restart the Docker with:
docker-compose down docker-compose up
-
Use
https://localhost:9443/caspui
to open CASP web console.
If you need to turn on virtualization on your Windows device, use these instructions:
- Enable Hyper-V using the instructions from Microsoft.
- You must enable virtualization in the BIOS on your device.
You can see the CASP log files by logging into the Docker container and then finding the CASP logs. See here for more information about the CASP logs.
The default Docker installed by yum
is an older version of Docker. You can use the technique below to update to a newer Docker version.
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum -y install docker-ce
sudo systemctl start docker
sudo curl -L \
"https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" \
-o /usr/local/docker-compose
sudo chmod +x /usr/local/docker-compose
See here for information about Docker licensing.