Skip to content

Prereqs for Local RegTest Network => Build Tools, Docker, Dashmate #12

Open
@coolaj86

Description

@coolaj86

If you already have a group of configs in ~/.dashmate/, you can destroy the nodes and begin anew with:

./dashmate/bin/dashmate group stop
./dashmate/bin/dashmate group reset
./dashmate/bin/dashmate group start
  1. Install updates and prereqs
    sudo apt update &&
       sudo apt install -y build-essential curl git
    
    curl https://webi.sh/ | sh
    source ~/.config/envman/PATH.env
    
    webi [email protected] jq pathman serviceman
    source ~/.config/envman/PATH.env
    
    mkdir -p ~/bin/
    pathman add ~/bin/
    source ~/.config/envman/PATH.env
    And reduce the amount of logging to something reasonable so that it doesn't fill up the disk from all the docker container messages:
    /etc/systemd/journald.conf:
    [Journal]
    Compress=yes
    SystemMaxUse=500M
    SystemKeepFree=4G
    SystemMaxFileSize=50M
    SystemMaxFiles=100
    RuntimeMaxUse=1G
    RuntimeKeepFree=500M
    RuntimeMaxFileSize=1G
    RuntimeMaxFiles=1000
    sudo systemctl daemon-reload
    sudo systemctl restart systemd-journald
  2. Install docker as per Request for Docker Engine/Docker Compose webinstall/webi-installer-requests#28 (comment)
    with special attention to the sections including:
    • groupadd docker
    • --groupname=docker
    • and nesting=1 (if already running within a container, such as docker)
  3. Install dashmate as per dashmate setup local fails with Database already exists dashpay/platform#1736 (comment):
    ~/bin/dashmate-install:
    #!/bin/sh
    set -e
    set -u
    
    # NOTE: the latest version doesn't work with dash-cli v20.1.1
    #g_rel="v1.0.0-pr.1902.1"
    #g_file="dashmate-v1.0.0-pr.1902.1-f5fc6d074-linux-x64.tar.gz"
    g_rel="v1.0.0-dev.9"
    g_file="dashmate-v1.0.0-dev.9-d6688bef2-linux-x64.tar.gz"
    if ! test -f "${g_file}"; then
        curl -L -O 'https://github.com/dashpay/platform/releases/download'/"${g_rel}"/"${g_file}"
    fi
    echo "Extracting ${g_file}"
    tar xf "${g_file}"
  4. Create a regtest (a.k.a. "local") network
    ~/bin/dashmate-regtest-init:
    #!/bin/sh
    set -e
    set -u
    
    (
        cd ./dashmate/
        ./bin/dashmate setup --verbose --node-count=3 --debug-logs --miner-interval=0.5m local
    
        ./bin/dashmate group start
    
        ./bin/dashmate status core --config=local_seed
        ./bin/dashmate status core --config=local_1
        ./bin/dashmate status core --config=local_2
        ./bin/dashmate status core --config=local_3
    )

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions