dvandal / cryptonote-nodejs-pool

Mining pool for all CryptoNote based coins using Cryptonight, Cryptonight Light and Cryptonight Heavy algorithms
GNU General Public License v2.0
367 stars 612 forks source link

node init.js ERROR #719

Closed lioncrypter closed 1 year ago

lioncrypter commented 1 year ago

poolxmr@pool-MS-7918:~/pool$ node init.js 2022-12-24 18:23:53 [master] Starting Cryptonote Node.JS pool version v2.0.0

/home/poolxmr/pool/node_modules/redis/dist/index.js:42 ...options?.modules ^

SyntaxError: Unexpected token . at Module._compile (internal/modules/cjs/loader.js:760:23) at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10) at Module.load (internal/modules/cjs/loader.js:685:32) at Function.Module._load (internal/modules/cjs/loader.js:620:12) at Module.require (internal/modules/cjs/loader.js:723:19) at require (internal/modules/cjs/helpers.js:14:16) at Object. (/home/poolxmr/pool/init.js:34:14) at Module._compile (internal/modules/cjs/loader.js:816:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:827:10) at Module.load (internal/modules/cjs/loader.js:685:32)

Config.json { "poolHost": "127.0.0.1",

"coin": "monero",
"symbol": "XMR",
"coinUnits": 1000000000000,
"coinDecimalPlaces": 4,
"coinDifficultyTarget": 120,
"blockchainExplorer": "http://blockexplorer.arqma.com/block/{id}",
"transactionExplorer": "http://blockexplorer.arqma.com/tx/{id}",
"daemonType": "default",
"cnAlgorithm": "randomx",
"cnVariant": 0,
"cnBlobType": 0,
"includeHeight": true,
"isRandomX": true,

"logging": {
    "files": {
        "level": "info",
        "directory": "logs",
        "flushInterval": 5
    },
    "console": {
        "level": "info",
        "colors": true
    }
},
"childPools": null,
"poolServer": {
    "enabled": true,
    "mergedMining": false,
    "clusterForks": "auto",
    "poolAddress": "45UzcPWoPQpFPdruNN28Hiccn6GEkLoVhCZt3QLzUbSyaPvAVVFMfba2CpweX8zz983v9VUshf2EwGc3XdWwLWdNQKV3qLW",
    "intAddressPrefix": 19,
    "blockRefreshInterval": 1000,
    "minerTimeout": 900,
    "sslCert": "./cert.pem",
    "sslKey": "./privkey.pem",
    "sslCA": "./chain.pem",
    "ports": [
        {
            "port": 3333,
            "difficulty": 5000,
            "desc": "Low end hardware"
        },
        {
            "port": 4444,
            "difficulty": 15000,
            "desc": "Mid range hardware"
        },
        {
            "port": 5555,
            "difficulty": 25000,
            "desc": "High end hardware"
        },
        {
            "port": 7777,
            "difficulty": 500000,
            "desc": "Cloud-mining / NiceHash"
        },
        {
            "port": 8888,
            "difficulty": 25000,
            "desc": "Hidden port",
            "hidden": true
        },
        {
            "port": 9999,
            "difficulty": 20000,
            "desc": "SSL connection",
            "ssl": true
        }
    ],
    "varDiff": {
        "minDiff": 100,
        "maxDiff": 100000000,
        "targetTime": 120,
        "retargetTime": 60,
        "variancePercent": 30,
        "maxJump": 100
    },
    "paymentId": {
        "addressSeparator": ".",
        "validation": false,
        "validations": ["1,16", "64"],
        "ban": true
    },
    "fixedDiff": {
        "enabled": true,
        "addressSeparator": "."
    },
    "shareTrust": {
        "enabled": true,
        "min": 10,
        "stepDown": 3,
        "threshold": 10,
        "penalty": 30
    },
    "banning": {
        "enabled": true,
        "time": 600,
        "invalidPercent": 25,
        "checkThreshold": 30
    },
    "slushMining": {
        "enabled": false,
        "weight": 300,
        "blockTime": 60,
        "lastBlockCheckRate": 1
    }
},

"payments": {
    "enabled": true,
    "interval": 1800,
    "maxAddresses": 50,
    "mixin": 7,
    "priority": 0,
    "transferFee": 14000000000,
    "dynamicTransferFee": true,
    "minerPayFee": true,
    "minPayment": 1000000000000,
    "maxPayment": null,
    "maxTransactionAmount": 0,
    "denomination": 100000000000
},

"blockUnlocker": {
    "enabled": true,
    "interval": 30,
    "depth": 60,
    "poolFee": 0.8,
    "devDonation": 0.2,
    "networkFee": 0.0
},

"api": {
    "enabled": true,
    "hashrateWindow": 600,
    "updateInterval": 5,
    "bindIp": "0.0.0.0",
    "port": 8117,
    "blocks": 30,
    "payments": 30,
    "password": "your_password",
    "ssl": false,
    "sslPort": 8119,
    "sslCert": "./cert.pem",
    "sslKey": "./privkey.pem",
    "sslCA": "./chain.pem",
    "trustProxyIP": true
},

"daemon": {
    "host": "127.0.0.1",
    "port": 18081
},

"wallet": {
    "host": "127.0.0.1",
    "port": 18082
},

"redis": {
    "host": "127.0.0.1",
    "port": 6379,
    "auth": null,
    "db": 0,
    "cleanupInterval": 15
},

"notifications": {
    "emailTemplate": "email_templates/default.txt",
    "emailSubject": {
        "emailAdded": "Your email was registered",
        "workerConnected": "Worker %WORKER_NAME% connected",
        "workerTimeout": "Worker %WORKER_NAME% stopped hashing",
        "workerBanned": "Worker %WORKER_NAME% banned",
        "blockFound": "Block %HEIGHT% found !",
        "blockUnlocked": "Block %HEIGHT% unlocked !",
        "blockOrphaned": "Block %HEIGHT% orphaned !",
        "payment": "We sent you a payment !"
    },
    "emailMessage": {
        "emailAdded": "Your email has been registered to receive pool notifications.",
        "workerConnected": "Your worker %WORKER_NAME% for address %MINER% is now connected from ip %IP%.",
        "workerTimeout": "Your worker %WORKER_NAME% for address %MINER% has stopped submitting hashes on %LAST_HASH%.",
        "workerBanned": "Your worker %WORKER_NAME% for address %MINER% has been banned.",
        "blockFound": "Block found at height %HEIGHT% by miner %MINER% on %TIME%. Waiting maturity.",
        "blockUnlocked": "Block mined at height %HEIGHT% with %REWARD% and %EFFORT% effort on %TIME%.",
        "blockOrphaned": "Block orphaned at height %HEIGHT% :(",
        "payment": "A payment of %AMOUNT% has been sent to %ADDRESS% wallet."
    },
    "telegramMessage": {
        "workerConnected": "Your worker _%WORKER_NAME%_ for address _%MINER%_ is now connected from ip _%IP%_.",
        "workerTimeout": "Your worker _%WORKER_NAME%_ for address _%MINER%_ has stopped submitting hashes on _%LAST_HASH%_.",
        "workerBanned": "Your worker _%WORKER_NAME%_ for address _%MINER%_ has been banned.",
        "blockFound": "*Block found at height* _%HEIGHT%_ *by miner* _%MINER%_*! Waiting maturity.*",
        "blockUnlocked": "*Block mined at height* _%HEIGHT%_ *with* _%REWARD%_ *and* _%EFFORT%_ *effort on* _%TIME%_*.*",
        "blockOrphaned": "*Block orphaned at height* _%HEIGHT%_ *:(*",
        "payment": "A payment of _%AMOUNT%_ has been sent."
    }
},

"email": {
    "enabled": false,
    "fromAddress": "your@email.com",
    "transport": "sendmail",
    "sendmail": {
        "path": "/usr/sbin/sendmail"
    },
    "smtp": {
        "host": "smtp.example.com",
        "port": 587,
        "secure": false,
        "auth": {
            "user": "username",
            "pass": "password"
        },
        "tls": {
            "rejectUnauthorized": false
        }
    },
    "mailgun": {
        "key": "your-private-key",
        "domain": "mg.yourdomain"
    }
},

"telegram": {
    "enabled": false,
    "botName": "",
    "token": "",
    "channel": "",
    "channelStats": {
        "enabled": false,
        "interval": 30
    },
    "botCommands": {
        "stats": "/stats",
        "report": "/report",
        "notify": "/notify",
        "blocks": "/blocks"
    }
},

"monitoring": {
    "daemon": {
        "checkInterval": 60,
        "rpcMethod": "getblockcount"
    },
    "wallet": {
        "checkInterval": 60,
        "rpcMethod": "getbalance"
    }
},

"prices": {
    "source": "cryptonator",
    "currency": "USD"
},

"charts": {
    "pool": {
        "hashrate": {
            "enabled": true,
            "updateInterval": 60,
            "stepInterval": 1800,
            "maximumPeriod": 86400
        },
        "miners": {
            "enabled": true,
            "updateInterval": 60,
            "stepInterval": 1800,
            "maximumPeriod": 86400
        },
        "workers": {
            "enabled": true,
            "updateInterval": 60,
            "stepInterval": 1800,
            "maximumPeriod": 86400
        },
        "difficulty": {
            "enabled": true,
            "updateInterval": 1800,
            "stepInterval": 10800,
            "maximumPeriod": 604800
        },
        "price": {
            "enabled": true,
            "updateInterval": 1800,
            "stepInterval": 10800,
            "maximumPeriod": 604800
        },
        "profit": {
            "enabled": true,
            "updateInterval": 1800,
            "stepInterval": 10800,
            "maximumPeriod": 604800
        }
    },
    "user": {
        "hashrate": {
            "enabled": true,
            "updateInterval": 180,
            "stepInterval": 1800,
            "maximumPeriod": 86400
        },
        "worker_hashrate": {
            "enabled": true,
            "updateInterval": 60,
            "stepInterval": 60,
            "maximumPeriod": 86400
        },
        "payments": {
            "enabled": true
        }
    },
    "blocks": {
        "enabled": true,
        "days": 30
    }
}

}

Cideg commented 1 year ago

/home/poolxmr/pool/node_modules/redis/dist/index.js:42

sudo add-apt-repository ppa:chris-lea/redis-server sudo apt-get update sudo apt-get install redis-server

redis-server & redis-cli