Clean up files and update instructions
This commit is contained in:
parent
a37e5ab1f2
commit
961b8cbea7
@ -1,8 +1,8 @@
|
|||||||
services:
|
services:
|
||||||
laconicd:
|
laconicd:
|
||||||
restart: no
|
restart: unless-stopped
|
||||||
image: cerc/laconic2d:local
|
image: cerc/laconic2d:local
|
||||||
command: ["/bin/sh", "-c", "/opt/run-laconicd.sh"]
|
command: ["bash", "-c", "/opt/run-laconicd.sh"]
|
||||||
environment:
|
environment:
|
||||||
CERC_MONIKER: ${CERC_MONIKER:-TestnetNode}
|
CERC_MONIKER: ${CERC_MONIKER:-TestnetNode}
|
||||||
CERC_CHAIN_ID: ${CERC_CHAIN_ID:-laconic_9000-1}
|
CERC_CHAIN_ID: ${CERC_CHAIN_ID:-laconic_9000-1}
|
||||||
@ -10,13 +10,9 @@ services:
|
|||||||
CERC_PEERS: ${CERC_PEERS}
|
CERC_PEERS: ${CERC_PEERS}
|
||||||
CERC_LOGLEVEL: ${CERC_LOGLEVEL:-info}
|
CERC_LOGLEVEL: ${CERC_LOGLEVEL:-info}
|
||||||
volumes:
|
volumes:
|
||||||
- laconicd-data:/root/.laconicd/data
|
- laconicd-data:/root/.laconicd
|
||||||
- laconicd-config:/root/.laconicd/config
|
- laconicd-config:/root/.laconicd/config
|
||||||
- laconicd-keyring:/root/.laconicd/keyring-test
|
|
||||||
- ../config/laconicd/scripts/run-laconicd.sh:/opt/run-laconicd.sh
|
- ../config/laconicd/scripts/run-laconicd.sh:/opt/run-laconicd.sh
|
||||||
- ../config/laconicd/scripts/export-mykey.sh:/docker-entrypoint-scripts.d/export-mykey.sh
|
|
||||||
- ../config/laconicd/scripts/export-myaddress.sh:/docker-entrypoint-scripts.d/export-myaddress.sh
|
|
||||||
# TODO: determine which of the ports below is really needed
|
|
||||||
ports:
|
ports:
|
||||||
- "6060"
|
- "6060"
|
||||||
- "26657"
|
- "26657"
|
||||||
@ -40,5 +36,3 @@ services:
|
|||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
laconicd-data:
|
laconicd-data:
|
||||||
laconicd-config:
|
|
||||||
laconicd-keyring:
|
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
laconicd keys show mykey | grep address | cut -d ' ' -f 3
|
|
@ -1,2 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
echo y | laconicd keys export mykey --unarmored-hex --unsafe
|
|
@ -1,51 +1,59 @@
|
|||||||
# laconicd-full-node
|
# laconicd-full-node
|
||||||
|
|
||||||
Instructions for deploying a laconicd full node along with steps to join testnet as a validator post genesis
|
Instructions for running a laconicd testnet full node and joining as a validator
|
||||||
|
|
||||||
Minimum hardware requirements:
|
## Prerequisites
|
||||||
|
|
||||||
- RAM: 8-16GB
|
* Minimum hardware requirements:
|
||||||
- Disk space: 200GB
|
|
||||||
- CPU: 2 cores
|
|
||||||
|
|
||||||
## Clone the stack repo
|
```bash
|
||||||
|
RAM: 8-16GB
|
||||||
|
Disk space: 200GB
|
||||||
|
CPU: 2 cores
|
||||||
|
```
|
||||||
|
|
||||||
```bash
|
* Testnet genesis file (file or an URL) and peer node addresses
|
||||||
laconic-so fetch-stack git.vdb.to/cerc-io/testnet-laconicd-stack
|
|
||||||
```
|
|
||||||
|
|
||||||
## Clone required repositories
|
## Setup
|
||||||
|
|
||||||
```bash
|
* Clone the stack repo:
|
||||||
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node setup-repositories
|
|
||||||
```
|
|
||||||
|
|
||||||
## Build the fixturenet-eth containers
|
```bash
|
||||||
|
laconic-so fetch-stack git.vdb.to/cerc-io/testnet-laconicd-stack
|
||||||
|
```
|
||||||
|
|
||||||
```bash
|
* Clone required repositories:
|
||||||
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node build-containers
|
|
||||||
```
|
|
||||||
|
|
||||||
This should create several container images in the local image registry:
|
```bash
|
||||||
|
laconic-so --stack /home/prathamesh/deepstack/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node setup-repositories
|
||||||
|
```
|
||||||
|
|
||||||
* cerc/laconic2d
|
* Build the container images:
|
||||||
* cerc/laconic-registry-cli
|
|
||||||
* cerc/webapp-base
|
|
||||||
* cerc/laconic-console-host
|
|
||||||
|
|
||||||
## Create a spec file for the deployment
|
```bash
|
||||||
|
laconic-so --stack /home/prathamesh/deepstack/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node build-containers
|
||||||
|
```
|
||||||
|
|
||||||
```bash
|
This should create the following docker images locally:
|
||||||
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node deploy init --output laconic-full-node-spec.yml
|
|
||||||
```
|
|
||||||
|
|
||||||
## Ports
|
* `cerc/laconic2d`
|
||||||
|
* `cerc/laconic-registry-cli`
|
||||||
|
* `cerc/webapp-base`
|
||||||
|
* `cerc/laconic-console-host`
|
||||||
|
|
||||||
Edit `network` in the spec file to map container ports to host ports as required:
|
## Create a deployment
|
||||||
|
|
||||||
```bash
|
* Create a spec file for the deployment:
|
||||||
...
|
|
||||||
network:
|
```bash
|
||||||
|
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node deploy init --output laconic-full-node-spec.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
* Edit `network` in the spec file to map container ports to host ports as required:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
...
|
||||||
|
network:
|
||||||
# TODO: UPDATE
|
# TODO: UPDATE
|
||||||
ports:
|
ports:
|
||||||
laconicd:
|
laconicd:
|
||||||
@ -55,30 +63,46 @@ network:
|
|||||||
- '9473:9473'
|
- '9473:9473'
|
||||||
- '9090:9090'
|
- '9090:9090'
|
||||||
- '1317:1317'
|
- '1317:1317'
|
||||||
```
|
```
|
||||||
|
|
||||||
## Create a deployment from the spec file
|
* Create a deployment from the spec file:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node deploy create --spec-file laconic-full-node-spec.yml --deployment-dir laconic-full-node-deployment
|
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconicd-full-node deploy create --spec-file laconic-full-node-spec.yml --deployment-dir laconic-full-node-deployment
|
||||||
```
|
```
|
||||||
|
|
||||||
### Configuration
|
* (Optional) Copy over the genesis file (`.json`) to config data directory in deployment (`laconic-full-node-deployment/data/laconicd-data/config`):
|
||||||
|
|
||||||
Copy genesis file to the deployment data directory:
|
```bash
|
||||||
|
# Example
|
||||||
|
mkdir -p laconic-full-node-deployment/data/laconicd-data/config
|
||||||
|
cp genesis.json laconic-full-node-deployment/data/laconicd-config/genesis.json
|
||||||
|
```
|
||||||
|
|
||||||
```bash
|
## Configuration
|
||||||
# Example
|
|
||||||
cp genesis.json laconic-full-node-deployment/data/laconicd-config/
|
|
||||||
```
|
|
||||||
|
|
||||||
Inside deployment directory, open the `config.env` file and set following env variables:
|
* Inside the deployment directory, open `config.env` file and set following env variables:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# TODO: UPDATE
|
# Comma separated list of nodes to keep persistent connections to
|
||||||
# External Filecoin (ETH RPC) endpoint to point the watcher to
|
# Example: "node-1-id@node-1-host:26656,node-2-id@node-2-host:26656"
|
||||||
CERC_PEERS=""
|
CERC_PEERS=""
|
||||||
```
|
|
||||||
|
# Optional
|
||||||
|
|
||||||
|
# A custom human readable name for this node (default: TestnetNode)
|
||||||
|
CERC_MONIKER=
|
||||||
|
|
||||||
|
# Network chain ID (default: laconic_9000-1)
|
||||||
|
CERC_CHAIN_ID=
|
||||||
|
|
||||||
|
# Genesis file URL
|
||||||
|
# Not required if a genesis file is placed in the config data directory in previous steps
|
||||||
|
CERC_GENESIS_FILE_URL=
|
||||||
|
|
||||||
|
# Output log level (default: info)
|
||||||
|
CERC_LOGLEVEL=
|
||||||
|
```
|
||||||
|
|
||||||
## Start the deployment
|
## Start the deployment
|
||||||
|
|
||||||
@ -88,7 +112,21 @@ laconic-so deployment --dir laconic-full-node-deployment start
|
|||||||
|
|
||||||
## Check status
|
## Check status
|
||||||
|
|
||||||
<!-- TODO -->
|
* To list down and monitor the running containers:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# With status
|
||||||
|
docker ps -a
|
||||||
|
|
||||||
|
# Check logs for a container
|
||||||
|
docker logs -f <CONTAINER_ID>
|
||||||
|
```
|
||||||
|
|
||||||
|
* Check the sync status of your node:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker exec -it <LACONICD_CONTAINER_ID> status | jq .sync_info
|
||||||
|
```
|
||||||
|
|
||||||
## Join as testnet validator
|
## Join as testnet validator
|
||||||
|
|
||||||
@ -98,12 +136,19 @@ laconic-so deployment --dir laconic-full-node-deployment start
|
|||||||
|
|
||||||
## Clean up
|
## Clean up
|
||||||
|
|
||||||
Stop all services running in the background:
|
* Stop all services running in the background:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
laconic-so deployment --dir laconic-full-node-deployment stop
|
# Stop the docker containers
|
||||||
```
|
laconic-so deployment --dir laconic-full-node-deployment stop
|
||||||
|
```
|
||||||
|
|
||||||
Clear volumes created by this stack:
|
* To stop all services and also delete data:
|
||||||
|
|
||||||
<!-- TODO -->
|
```bash
|
||||||
|
# Stop the docker containers
|
||||||
|
laconic-so deployment --dir laconic-full-node-deployment stop --delete-volumes
|
||||||
|
|
||||||
|
# Remove deployment directory (deployment will have to be recreated for a re-run)
|
||||||
|
rm -r laconic-full-node-deployment
|
||||||
|
```
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
version: "1.1"
|
version: "1.0"
|
||||||
name: laconicd-full-node
|
name: laconicd-full-node
|
||||||
description: "Laconicd full node"
|
description: "Laconicd full node"
|
||||||
repos:
|
repos:
|
||||||
- cerc-io/laconic2d
|
- git.vdb.to/cerc-io/laconic2d@pm-stack-changes
|
||||||
- cerc-io/laconic-registry-cli@laconic2
|
- git.vdb.to/cerc-io/laconic-registry-cli@laconic2
|
||||||
- cerc-io/laconic-console@laconic2
|
- git.vdb.to/cerc-io/laconic-console@laconic2
|
||||||
containers:
|
containers:
|
||||||
- cerc/laconic2d
|
- cerc/laconic2d
|
||||||
- cerc/laconic-registry-cli
|
- cerc/laconic-registry-cli
|
||||||
@ -13,7 +13,3 @@ containers:
|
|||||||
pods:
|
pods:
|
||||||
- laconicd-full-node
|
- laconicd-full-node
|
||||||
- laconic-console
|
- laconic-console
|
||||||
config:
|
|
||||||
cli:
|
|
||||||
key: laconicd.mykey
|
|
||||||
address: laconicd.myaddress
|
|
||||||
|
Loading…
Reference in New Issue
Block a user