Capitalisk can be set up as a module on any LDEM node such as a Leasehold node. It allows a single node to participate in multiple blockchains at the same time; this feature allows DEX markets to be created between those blockchains.
1. Machine/instance requirements
- A machine/instance with a publicly exposed IP address (E.g. from a cloud service provider).
- 100GB of hard drive space is recommended (this should be enough for several years of data).
- Port 8001 needs to be open for inbound TCP traffic.
- All ports should be open for outbound TCP traffic.
2. Install necessary modules
Navigate to your existing
LDEM node's main working directory.
For a Leasehold
LDEM node, the directory is usually called
Then, once inside, execute the following commands:
npm install ldpos-chain --save
npm install ldpos-knex-dal --save
3. Add the clsk-genesis.json file to your node
While still inside your node's main working directory, create a new directory to hold the
clsk-genesis.json file for Capitalisk:
mkdir -p genesis/mainnet
Then, inside this new
genesis/mainnet/ directory, create a new file called
clsk-genesis.json and paste the content of the following file inside of it:
4. Create a new database for Capitalisk
Create a new Postgres database called
The following commands may be different depending on your Postgres setup:
postgres createdb capitalisk_main
If using the default
postgres user, the command would be:
sudo -u postgres createdb capitalisk_main
Capitalisk also supports the SQLite database but that's a topic for a different guide.
5. Add the Capitalisk module config
Inside your node's main working directory, there should be a file called
config.json; inside it, there should be a
modules array which holds configurations for each of the modules which are running on your node. You should add the following config object to this
Make sure that each object in your
config.json file is separated with a comma (and is valid JSON) or else the node will fail to launch.
You will need to modify the properties above inside the
dal.connection object to make it point to your Postgres database; make sure that the
port properties are correct based on your node's current setup.
Make sure that the
genesisPath property points to the path of the
clsk-genesis.json file which you created in step 2 (default above should be fine in most cases).
6. Restart your node
pm2, make sure that you
pm2 delete any previous instances of your node to make sure that you'll be launching the node with the latest source code (with the new modules).
You should watch the logs using the
pm2 logs command to see your node's
capitalisk_chain module catching up with the rest of the Capitalisk network.
You can modify the
consoleLogLevel from the
config.json file on a per-module basis if some of your modules are producing too much (or not enough) output.