Skip to content
This repository has been archived by the owner on Jun 30, 2021. It is now read-only.

Alternative Install Methods #32

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
85 changes: 85 additions & 0 deletions README.md
Expand Up @@ -67,3 +67,88 @@ the tasks (found shares/blocks/stats etc) that it generates. You can run the wor
like this:

python simplecoin/celery_entry.py -l INFO --beat


==================== Alternate Guide written By LiveChains UK =======================

This makes the following presumptions

1: Although the install of virtual enviroment is done during this guide, the end product wont be inside it
2: Ubuntu 12.04.01 Used for This Guide X64 Bit, Dual Core, 2GB RAM, 20GB RAID 10 100Mbps.
3: You have at least some linux problem solving skills, google is your friend
4: Your install is CLEAN, ie you only selected SSH during ubuntu server.
5: You accept this is BETA at best, using it as a production pool comes with huge risks, there are known bugs
in the platform. YOU USE THIS GUIDE AND THIS SOFTWARE AT YOUR OWN RISK LIVECHAINS WILL NOT ACCEPT RESPONCIBILITY
IN ANYFORM FOR THE ACTIONS THIS GUIDE MAY TAKE. THIS IS 100% AT YOUR OWN RISK

################################
# Dependancy Installation #
################################


apt-get update
apt-get upgrade
apt-get install python-software-properties
apt-add-repository ppa:chris-lea/node.js
apt-add-repository ppa:bitcoin/bitcoin -y
apt-get update
apt-get install git-core nodejs python2.7-dev python-setuptools python2.7 build-essential redis-server postgresql-contrib-9.1 postgresql-9.1 postgresql-server-dev-9.1 rabbitmq-server git python-pip
apt-get build-dep bitcoin -y
easy_install pip
pip install virtualenv
pip install virtualenvwrapper

That about coveres the dependancys at this point, youll not we include a bitcoin repo and packages
this is there purley to shrink the APT-GET Commands, it will include all the dependancys that are
required but not listed, for instance the ability to compile wallets and daemons for this to use.

Youll note we install virtualenvwrapper this is specified in the SIMPLECOIN GIT and is good practise,
that said we dont actually use it in this guide, in order to be comprehensive lets cover its set here
just incase you choose to use it.

################################
# VitualENV Configuration Steps#
################################

mkdir -p ~/.virtualenvs
echo 'export WORKON_HOME=~/.virtualenvs' >> ~/.bashrc
echo 'source /usr/local/bin/virtualenvwrapper.sh' >> ~/.bashrc
source ~/.bashrc

If you plan on using virtual env you should now do

mkvirtualenv sd

And follow the rest of this guide!

###################################
# SimpleCoin Time
###################################

You can Copy and paste this bit, this will get simplecoin, install more requirements and
dependancys, compile what needs doing etc, this CAN on slow systems take some time

git clone https://github.com/simplecrypto/simplecoin.git
cd simplecoin
pip install -r requirements.txt
pip install -r dev-requirements.txt
npm install -g grunt-cli
npm install
./util/reset_db.sh
cp config.yml.example config.yml
python manage.py init_db
python manage.py runserver

Thats it, you will OBVIOUSLY need to check all the config and update as nessasary, like coin RPC Details
system IP, wallet address, pool fees, payout, blockvalues etc etc


#################################
# Last Step #
#############

Once you have stratum installed and running you will need to execute

python simplecoin/celery_entry.py -l INFO --beat

this will pass the hashrates from stratum to the frontend, along with share stats, worker stats etcetc
49 changes: 48 additions & 1 deletion config.yml.example
Expand Up @@ -6,15 +6,25 @@ monitor_addrs:
mon_address: http://localhost:3855/
- stratum: tcp+stratum://localhost:3334
mon_address: http://localhost:3856/


# how many confirmations do we wait before marking blocks mature
# and allowing payout over RPC
block_mature_confirms: 250


# the version that will trigger an upgrade notification
latest_ppagent: [0, 3, 4]


# The postgresql database connection configuration
SQLALCHEMY_DATABASE_URI: postgresql://simplecoin:testing@localhost:5432/simplecoin


# the session encryption key
SECRET_KEY: 'somethting_really_secret'


# a simple list of users to redact from the stats. Should be built out to a
# database table at some point
redacted_addresses:
Expand Down Expand Up @@ -45,23 +55,30 @@ email:
# =======================================================================
# Celery configuration options. Since celery is run under a flask context
# then thses are settings for the celery worker.

celery:
CELERY_ACCEPT_CONTENT: ['pickle', 'json', 'msgpack', 'yaml']


# the name of the queue you'll recieve tasks from powerpool on. should
# match the default queue setting in powerpool instances that connect with
# this task handler


#CELERY_QUEUES:
# doge:
# exchange: doge
# binding_key: doge
BROKER_URL: 'amqp://guest:guest@localhost:5672/doge'

# set this to true and celery will only run scheduled tasks to refresh cache
# objects. This allows you to run a staging version on the same database,
# but with separate caches
#stage: False

# Cache configuration
# ========================================================================

# The cache database that redis will use
#main_cache:
# CACHE_REDIS_DB: 1
Expand All @@ -70,20 +87,27 @@ celery:
# ========================================================================
# Controls how payout database entries are calculated
#

# the multiplier used on the last n shares to keep for counting share
# contributions
last_n: 2

# this is the n margin that is left by the cleanup script.
cleanup_n: 4

# default donation/bonus percentage applied to payouts if no custom is
# defined
default_perc: 0

# sets to lowest that a user is allowed to set their fee percentage
minimum_perc: -5.0

# address where all donated percents (or fees) will go
donate_address: DAbhwsnEq5TjtBP5j76TinhUqqLTktDAnD

# address where all mining from invalid addresses goes
catchall_address: DAbhwsnEq5TjtBP5j76TinhUqqLTktDAnD

# block find reward. set to zero or comment out to not use. in satoshi
block_bonus: 1000000000000

Expand All @@ -92,15 +116,20 @@ block_bonus: 1000000000000
# These settings control how the remote rpc payout script functions, as opposed
# to payout functionalities on the server
#

# min payout amount in satoshi
minimum_payout: 100000000 # 1 doge (or ltc, or whatever)

# the fee used when sending payouts to the coinserver. IE, to be applied
# to the payout transaction for transmission to the network
payout_fee: 1.0

# key used to sign rpc requests for payout system. Keep this secure
rpc_signature: ''

# where are we expecting the rpc server to be?
rpc_url: http://www.simpledoge.com

# what the address should start with to try paying it out. 1 for BTC, L for
# LTC, etc
payout_prefix: D
Expand All @@ -113,45 +142,63 @@ mpos_api_keys:

# Coin/Branding
# =======================================================================


# Website name
site_name: Simple Doge

# Website title
site_url: simpledoge.com

# the path that will be postfixed with the current git hash in the footer.
# comment out to remove the footer mark
repopath: https://github.com/simplecrypto/simplecoin/commit/

# the block reward. Used to calculate averages, etc
reward: 250000

# the colloquial name of the coin
coin_name: Doge
site_title: Simple Doge

# the unicode symbol for the coin
coin_symbol: "Ð"

# host for static assets e.g. {assets_address}/css/main.css
assets_address: http://simpledoge.com/static
assets_address:

# logo img
logo: "/img/dogecoin.png"

# xs leader img
leader-xs: "/img/doge-miner-xs.jpg"

# sm leader img
leader-sm: "/img/doge-miner-sm.jpg"

# fullsize leader img
leader: "/img/doge-miner.jpg"

# this url will have the transaction id appended to it to provide
# information on a specific transaction for a payout
transaction_link_prefix: http://dogechain.info/tx/

# just like above, but with a block
block_link_prefix: http://dogechain.info/block/

# stratum server address
stratum_address: stratum.simpledoge.com

# stratum port
stratum_port: 3333

# link to a good beginner guide
beginner_guide: <a href="http://www.reddit.com/r/dogemining/wiki/index/mining_guide" target="_blank">Reddit</a>

# Logging
# =======================================================================
# where all webserver exceptions and logging messages will get put
#log_file = webserver.log

# all management commands will be logged here
#manage_log_file = manage.log