forked from akash-network/awesome-akash
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
KawPow Mining Pools - Ravencoin, Neoxa, Meowcoin (akash-network#347)
* Add kawpow-pool Add support for Ravencoin, Neoxa, and Meowcoin! * Update port mappings * Add README and cleanup to final images * Bump Image * Touch up README * Update signedBy * Remove blocknotify for now
- Loading branch information
Showing
22 changed files
with
1,048 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
FROM ubuntu:22.04 | ||
RUN apt-get update ; apt-get dist-upgrade -yqq ; apt-get install -y git wget unzip | ||
RUN wget https://github.com/JustAResearcher/Meowcoin/releases/download/V1.0.3/MEOW-1.0.3-CLI-x86_64-linux-gnu.tar.gz | ||
RUN tar -zxvf MEOW-1.0.3-CLI-x86_64-linux-gnu.tar.gz | ||
RUN mkdir -p /root/.meowcoin | ||
|
||
EXPOSE 9766 | ||
|
||
ENV PRIVATE_KEY= | ||
|
||
COPY blocknotify /root/.meowcoin/blocknotify | ||
COPY starter.sh / | ||
|
||
ENTRYPOINT ["./starter.sh"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
FROM ubuntu:18.04 | ||
RUN apt-get update ; apt-get install -y git sudo software-properties-common | ||
RUN DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get -y install tzdata | ||
|
||
RUN add-apt-repository -y ppa:chris-lea/redis-server ; add-apt-repository -y ppa:bitcoin/bitcoin ; apt update | ||
RUN apt install -y libdb4.8-dev libdb4.8++-dev libssl-dev libboost-all-dev libminiupnpc-dev libtool autotools-dev redis-server | ||
RUN apt install -y git npm nodejs | ||
RUN apt-get install -y apt-transport-https software-properties-common build-essential autoconf pkg-config make gcc g++ screen wget curl ntp fail2ban | ||
RUN cd ~ | ||
RUN git config --global http.https://gopkg.in.followRedirects true | ||
RUN git clone https://github.com/88plug/kawpow-pool | ||
|
||
EXPOSE 8080 | ||
|
||
RUN cd kawpow-pool/ ; chmod +x ./install.sh ; ./install.sh | ||
COPY start.sh / | ||
|
||
ENV DAEMON_HOST= | ||
ENV DAEMON_PORT= | ||
ENV DAEMON_USER= | ||
ENV DAEMON_PASS= | ||
|
||
ENV WALLET= | ||
ENV FEE_WALLET= | ||
ENV FEE_AMOUNT=0.1 | ||
ENV RAVEN_ENABLE=false | ||
ENV NEOXA_ENABLE=false | ||
ENV MEOWCOIN_ENABLE=true | ||
#1% fee | ||
|
||
ENTRYPOINT ["./start.sh"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
# NOMP KawPoW Algorithm Mining Pool | ||
Highly Efficient mining pool for Coins based on KawPoW algo! | ||
|
||
# Highly modified for the Akash.Network | ||
Supports Ravencoin, Neoxa, Meowcoin | ||
|
||
### Requirements | ||
|
||
# I already have a Mewocoin wallet and private key | ||
|
||
Great! You are steps away from your own private mining pool. Click Deploy and update the required variables with your wallet information | ||
|
||
``` | ||
WALLET= | ||
FEE_WALLET= | ||
PRIVATE_KEY= | ||
``` | ||
|
||
After the deployment has started click on the URI / URL in the Deployment Details page to access the web interface. | ||
|
||
# I don't have a Meowcoin wallet or private key. | ||
|
||
You need a Meowcoin wallet address and private key to setup the mining pool. If you do not have one, simply deploy this default template without any WALLET or PRIVATE_KEY defined. | ||
In Cloudmos, select "Shell" and from the services tab click on "meowcoin". In the "Type command window" use the 2 following commands to generate a new address and show the private key of the new address. | ||
|
||
``` | ||
/meowcoin-cli getnewaddress | ||
YOUR_NEW_ADDRESS | ||
/meowcoin-cli dumpprivkey YOUR_NEW_ADDRESS | ||
``` | ||
* Replace YOUR_NEW_ADDRESS after dumpprivkey to get the private key! | ||
|
||
You can now update the variables in the deployment with your new wallet and private key. Be sure to write down the private key or keep it in a safe place! | ||
|
||
# Connecting to the Mining Pool / Stratum Ports | ||
|
||
The mining pool is pre-configured to map each stratum port to an ephemeral port. After your deployment is successful you will see the new port numbers to connect to. | ||
|
||
# What about security? | ||
|
||
The default template is configured to only deploy to audited Akash providers. If you remove this `signedBy` attribution key you are putting your private key at risk. | ||
The pool wallet should NEVER be used for long term/cold storage of coins. | ||
|
||
------- | ||
### Screenshots | ||
#### Home<br /> | ||
 | ||
|
||
#### Pool Stats<br /> | ||
<br /><br /> | ||
|
||
#### Miner Stats<br /> | ||
<br /><br /> | ||
|
||
#### Payments<br /> | ||
<br /><br /> | ||
|
||
------- | ||
### Node Open Mining Portal consists of 3 main modules: | ||
| Project | Link | | ||
| ------------- | ------------- | | ||
| [KawPoWNOMP](https://github.com/Satoex/kawpow-pool.git) | https://github.com/Satoex/kawpow-pool.git | | ||
| [Stratum Pool](https://github.com/GRinvestPOOL/kawpow-stratum-pool-1.git) | https://github.com/GRinvestPOOL/kawpow-stratum-pool-1.git | | ||
| [Node Multihashing](https://github.com/zone117x/node-multi-hashing.git) | https://github.com/zone117x/node-multi-hashing.git | | ||
|
||
------- |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,132 @@ | ||
--- | ||
version: "2.0" | ||
|
||
services: | ||
kawpow-pool: | ||
image: cryptoandcoffee/akash-kawpow-pool:9 | ||
expose: | ||
- port: 17117 | ||
to: | ||
- service: meowcoin | ||
#Pool API | ||
- port: 8788 | ||
to: | ||
- global: true | ||
#P2P Port | ||
- port: 8080 | ||
as: 80 | ||
to: | ||
- global: true | ||
#Web UI Port | ||
- port: 10001 | ||
as: 10001 | ||
to: | ||
- global: true | ||
#Difficulty: 0.001 | ||
- port: 10002 | ||
as: 10002 | ||
to: | ||
- global: true | ||
#Difficulty: 0.01 | ||
- port: 10003 | ||
as: 10003 | ||
to: | ||
- global: true | ||
#Difficulty: 0.1 | ||
- port: 10004 | ||
as: 10004 | ||
to: | ||
- global: true | ||
#Difficulty: 0.5 | ||
- port: 10005 | ||
as: 10005 | ||
to: | ||
- global: true | ||
#Difficulty: 1 | ||
- port: 10006 | ||
as: 10006 | ||
to: | ||
- global: true | ||
#Difficulty: 2 | ||
- port: 10007 | ||
as: 10007 | ||
to: | ||
- global: true | ||
#Difficulty: 4 | ||
- port: 10008 | ||
as: 10008 | ||
to: | ||
- global: true | ||
#Difficulty: 0.5 | ||
env: | ||
- RAVEN_ENABLE=false | ||
- NEOXA_ENABLE=false | ||
- MEOWCOIN_ENABLE=true | ||
- WALLET= | ||
- FEE_WALLET= | ||
- FEE_AMOUNT=0.1 | ||
- DAEMON_HOST=meowcoin | ||
- DAEMON_PORT=9766 | ||
- DAEMON_USER=user1 | ||
- DAEMON_PASS=pass1 | ||
meowcoin: | ||
image: cryptoandcoffee/akash-meowcoin:3 | ||
expose: | ||
- port: 9766 | ||
to: | ||
- service: kawpow-pool | ||
env: | ||
- PRIVATE_KEY= | ||
profiles: | ||
compute: | ||
kawpow-pool: | ||
resources: | ||
cpu: | ||
units: 2 | ||
#Min 0.01 / Max 256 cpu.units | ||
memory: | ||
size: 4Gi | ||
#Min 8Gi for kawpow-pool / Max 512Gi | ||
storage: | ||
size: 8Gi | ||
#Current blockchain size is > 144Gi | ||
#Max 32Ti | ||
meowcoin: | ||
resources: | ||
cpu: | ||
units: 2 | ||
#Min 0.01 / Max 256 cpu.units | ||
memory: | ||
size: 4Gi | ||
#Min 8Gi for kawpow-pool / Max 512Gi | ||
storage: | ||
size: 10Gi | ||
#Current blockchain size is > 144Gi | ||
#Max 32Ti | ||
placement: | ||
akash: | ||
####################################################### | ||
#Keep this section to deploy on trusted providers | ||
signedBy: | ||
anyOf: | ||
- "akash1365yvmc4s7awdyj3n2sav7xfx76adc6dnmlx63" | ||
####################################################### | ||
#Remove this section to deploy on untrusted providers | ||
#Beware* You may have deployment, security, or other issues on untrusted providers | ||
#https://docs.akash.network/providers/akash-audited-attributes | ||
pricing: | ||
kawpow-pool: | ||
denom: uakt | ||
amount: 10000 #Keep high to show all bids | ||
meowcoin: | ||
denom: uakt | ||
amount: 10000 #Keep high to show all bids | ||
deployment: | ||
kawpow-pool: | ||
akash: | ||
profile: kawpow-pool | ||
count: 1 | ||
meowcoin: | ||
akash: | ||
profile: meowcoin | ||
count: 1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
#!/bin/bash | ||
cd kawpow-pool/ | ||
ls | ||
chmod +x *.sh | ||
service redis-server start | ||
rm package-lock.json | ||
rm -rf node_modules | ||
|
||
npm install | ||
|
||
sed -i '/const TAGS/,/taggedHash;/d' node_modules/bitcoinjs-lib/src/crypto.js | ||
|
||
if [[ $NEOXA_ENABLE == "true" ]]; then | ||
sed -i 's/NEOXA_ENABLE/true/g' pool_configs/neoxa.json | ||
sed -i 's/WALLET/"'"$WALLET"'"/g' pool_configs/neoxa.json | ||
sed -i 's/FEE/"'"${FEE_WALLET}"'"/g' pool_configs/neoxa.json | ||
sed -i 's/AMOUNT/'${FEE_AMOUNT}'/g' pool_configs/neoxa.json | ||
sed -i 's/HOST/"'"${DAEMON_HOST}"'"/g' pool_configs/neoxa.json | ||
sed -i 's/PORT/'${DAEMON_PORT}'/g' pool_configs/neoxa.json | ||
sed -i 's/USER/"'"${DAEMON_USER}"'"/g' pool_configs/neoxa.json | ||
sed -i 's/PASS/"'"${DAEMON_PASS}"'"/g' pool_configs/neoxa.json | ||
else | ||
sed -i 's/NEOXA_ENABLE/false/g' pool_configs/neoxa.json | ||
sed -i 's/WALLET/"'"$WALLET"'"/g' pool_configs/neoxa.json | ||
sed -i 's/FEE/"'"${FEE_WALLET}"'"/g' pool_configs/neoxa.json | ||
sed -i 's/AMOUNT/'${FEE_AMOUNT}'/g' pool_configs/neoxa.json | ||
sed -i 's/HOST/"'"${DAEMON_HOST}"'"/g' pool_configs/neoxa.json | ||
sed -i 's/PORT/'${DAEMON_PORT}'/g' pool_configs/neoxa.json | ||
sed -i 's/USER/"'"${DAEMON_USER}"'"/g' pool_configs/neoxa.json | ||
sed -i 's/PASS/"'"${DAEMON_PASS}"'"/g' pool_configs/neoxa.json | ||
fi | ||
|
||
|
||
if [[ $RAVEN_ENABLE == "true" ]]; then | ||
sed -i 's/RAVEN_ENABLE/true/g' pool_configs/ravencoin.json | ||
sed -i 's/WALLET/"'"$WALLET"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/FEE/"'"${FEE_WALLET}"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/AMOUNT/'${FEE_AMOUNT}'/g' pool_configs/ravencoin.json | ||
sed -i 's/HOST/"'"${DAEMON_HOST}"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/PORT/'${DAEMON_PORT}'/g' pool_configs/ravencoin.json | ||
sed -i 's/USER/"'"${DAEMON_USER}"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/PASS/"'"${DAEMON_PASS}"'"/g' pool_configs/ravencoin.json | ||
else | ||
sed -i 's/RAVEN_ENABLE/false/g' pool_configs/ravencoin.json | ||
sed -i 's/WALLET/"'"$WALLET"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/FEE/"'"${FEE_WALLET}"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/AMOUNT/'${FEE_AMOUNT}'/g' pool_configs/ravencoin.json | ||
sed -i 's/HOST/"'"${DAEMON_HOST}"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/PORT/'${DAEMON_PORT}'/g' pool_configs/ravencoin.json | ||
sed -i 's/USER/"'"${DAEMON_USER}"'"/g' pool_configs/ravencoin.json | ||
sed -i 's/PASS/"'"${DAEMON_PASS}"'"/g' pool_configs/ravencoin.json | ||
fi | ||
|
||
if [[ $MEOWCOIN_ENABLE == "true" ]]; then | ||
sed -i 's/MEOWCOIN_ENABLE/true/g' pool_configs/meowcoin.json | ||
sed -i 's/WALLET/"'"$WALLET"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/FEE/"'"${FEE_WALLET}"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/AMOUNT/'${FEE_AMOUNT}'/g' pool_configs/meowcoin.json | ||
sed -i 's/HOST/"'"${DAEMON_HOST}"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/PORT/'${DAEMON_PORT}'/g' pool_configs/meowcoin.json | ||
sed -i 's/USER/"'"${DAEMON_USER}"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/PASS/"'"${DAEMON_PASS}"'"/g' pool_configs/meowcoin.json | ||
else | ||
sed -i 's/MEOWCOIN_ENABLE/false/g' pool_configs/meowcoin.json | ||
sed -i 's/WALLET/"'"$WALLET"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/FEE/"'"${FEE_WALLET}"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/AMOUNT/'${FEE_AMOUNT}'/g' pool_configs/meowcoin.json | ||
sed -i 's/HOST/"'"${DAEMON_HOST}"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/PORT/'${DAEMON_PORT}'/g' pool_configs/meowcoin.json | ||
sed -i 's/USER/"'"${DAEMON_USER}"'"/g' pool_configs/meowcoin.json | ||
sed -i 's/PASS/"'"${DAEMON_PASS}"'"/g' pool_configs/meowcoin.json | ||
fi | ||
|
||
|
||
cat pool_configs/neoxa.json | ||
cat pool_configs/ravencoin.json | ||
cat pool_configs/meowcoin.json | ||
|
||
cat node_modules/bitcoinjs-lib/src/crypto.js | ||
cd scripts | ||
gcc blocknotify.c -o blocknotify | ||
cp blocknotify /usr/local/bin | ||
cd .. | ||
./pool-start.sh | ||
./pool-logs-watch.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
#!/bin/bash | ||
|
||
cat <<EOT > /root/.meowcoin/meowcoin.conf | ||
rpcuser=user1 | ||
rpcpassword=pass1 | ||
onlynet=ipv4 | ||
#blocknotify=/root/.meowcoin/blocknotify meowcoin:17117 meowcoin %s | ||
#zmqpubhashblock=tcp://127.0.0.1:15101 | ||
rpcbind=0.0.0.0 | ||
server=1 | ||
listen=1 | ||
rpcallowip=::/0 | ||
EOT | ||
|
||
/meowcoind -daemon | ||
sleep 5 | ||
/meowcoin-cli importprivkey $PRIVATE_KEY | ||
tail -f /root/.meowcoin/debug.log -n1000 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
FROM ubuntu:22.04 | ||
RUN apt-get update ; apt-get dist-upgrade -yqq ; apt-get install -y git wget unzip | ||
RUN wget https://github.com/NeoxaChain/Neoxa/releases/download/v1.0.3/neoxad-linux64.zip | ||
RUN unzip neoxad-linux64.zip ; rm neoxad-linux64.zip | ||
RUN mkdir -p /root/.neoxa | ||
|
||
EXPOSE 9766 | ||
|
||
COPY blocknotify /root/.neoxa/blocknotify | ||
|
||
COPY starter.sh / | ||
|
||
ENV PRIVATE_KEY= | ||
|
||
ENTRYPOINT ["./starter.sh"] |
Oops, something went wrong.