目次
マイニングプールのWeb(php-mpos)構築
coindが無事に入ったら、次はプールの表示画面を構築します。MPOS(php-mpos)は歴史があるソフトウェアのため、非常に多くのユーザがいます。エラーメッセージがあっても貼り付けるだけで解決策が見つかることも結構あります。
マニュアルもしっかり最新に更新されてる。公式マニュアルはこちら
https://github.com/MPOS/php-mpos/wiki/Quick-Start-Guide
では、早速構築します。
php-mposの構築
上記公式から必要な内容の抜き出し+幾つか加えた上で入れます。
coindのときと同じく、下記コピペしてシェルスクリプト作って実行で入ります。
※既にMPOSを運用しているプール運営の方は、上書きする前に必ず動作テストを別サーバで行うようにしてください。単純に上書きするとDB定義のバージョンが違うといったメッセージが出ます。DBのバックアップデータを元に動作検証をするのが良いかと思います。
sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install mysql-server
sudo apt-get install -y apache2
sudo apt-get install -y git memcached php-memcached php7.0-mysqlnd php7.0-curl php7.0-json php7.0-curl libapache2-mod-php7.0
sudo apt-get install -y php-mbstring php-dom unzip
sudo apache2ctl -k stop; sleep 2; sudo apache2ctl -k start
sudo git clone git://github.com/MPOS/php-mpos.git php-mpos
cd php-mpos
sudo git checkout master
php composer.phar install
sudo cp include/config/global.inc.dist.php include/config/global.inc.php
sudo chown -R www-data templates/compile templates/cache logs
sudo mv * /var/www/html
Updating dependencies (including require-dev) というメッセージが表示されるところで1分程度止まる場合もあるので気長に待ってください。
mysqlとapacheの設定を変える
mysql
sudo vi /etc/mysql/my.cnf
下記を追記
[mysqld]
sql_mode=''
もしプール稼働時にエラーが出てしまうようであれば、こちらの記事のmysqlの設定を参考にしてみてください。
DBとテーブルを作成(今回は「mpos」というDBを作ります)
sudo mysql -p -e "create database mpos"
sudo mysql -p mpos < sql/000_base_structure.sql
apache
※apacheの設定で、webrootは/var/www/html/publicにする。
apacheはもちろんnginxでもOK
vi /etc/apache2/sites-available/000-default.conf
下記に変更
DocumentRoot /var/www/html/public
これでインストールは終わり。
次はmpos自体の設定を変えます。
mposの設定
ここまでできたら次は設定ファイルをいじります。
設定ファイルは/var/www/html/include/config/global.inc.php になります。
設定が必要な場所
最低限必要な設定を記述します。
DB関連の設定
mpos用のmysqlのユーザ名、パスワードを設定
$config['db']['host'] = 'localhost';
$config['db']['user'] = 'someuser';
$config['db']['pass'] = 'somepassword';
$config['db']['port'] = 3306;
$config['db']['name'] = 'mpos';
coin-deamon(coind)の設定
kumacoinの場合、kumacoindのrpcポートは7585、ユーザ名とパスワードはkumacoind.confで指定したもの。
$config['wallet']['host'] = 'localhost:7585';
$config['wallet']['username'] = 'rpcuser';
$config['wallet']['password'] = 'rpcpass';
通貨コードの設定
通貨コード。mposのアドレス管理に使うので、正しく指定する。
$config['currency'] = 'kuma';
ここでファイアウォールを設定してブラウザでindex.phpにアクセスできるか確認します。
エラーがなくプールの画面が出てきたらmposの設定は完了です。
crontabの設定
(stratum-miningの設定が終わってプールが稼働し始めたら)、以下の内容でcronを設定します。
下記は5分起きにしていますが、コインの採掘時間に合わせて前後してください。重複実行はしないようになっているので短めに設定してもOKです。
crontab -e
*/5 * * * * /var/www/html/cronjobs/run-crons.sh
支払い方法の変更
慣れてきたタイミングでも良いのですが、支払い方法をpropからpplnsに変更することをお勧めします。
なぜお勧めするかは下記記事を参照。
これで終わりです。500エラーが出てしまった場合は、apacheのログ /var/log/apache2/error.log を見て原因探ってみてください。
無事動いたらお疲れ様でした!
次はstratum-miningの設定です。