PocketMine-MPをConohaVPSで立てる(2019/10)
突如としてマインクラフトをしたくなる
突然にマインクラフトをしたくなった。理由はいらないのさ。 ハマり始めた人と一緒にやることになったのだが、ワールドを共有しかつ同時にオンラインするには以下の方法がある。
- Realms にサブスクライブして 400or900 円/月(適当)で遊ぶ
- あんま金払いたくない。解約めんどくさそう。あんま回線良くなさそう。
- 同じ Wifi ネットワークに接続して遊ぶ
- 使っているワールドをコピーしてローカルでごちゃごちゃすればまぁ仮想的に同時にワールドを編集することになるけどめんどくさい。ワールドで遊んでたらバッタリ会うみたいなワクワクがないのでナシ。
- 自分でサーバを立てる
- 一番めんどくさそう。でもマイクラもインフラにも触れるから楽しいことになりそう。
自分でサーバを立てることにする
そろそろ個人で真面目にサービスを作りたかったので、インフラの勉強がてら自分で立てることにした。 Conoha は使ったことがなかったが、ネットを見回した感じ一番マイクラのサーバになってそうで情報量が多そうだと判断したので Conoha をマイクラサーバとして選択した。 とりあえず以下の記事でサーバを立てる。自分はメモリ 1GB SSD50GB のプラン(最大 900 円?)でイメージは OS/CentOs を選んだ。 ConoHa でサクっと Web サーバーを作ろう ここからが長く、必要なミドルウェアを落として、PMMP のコードをコンパイルして。。などを繰り返すことになるが、なかなか上手くいかない。なんせ 4,5 年前の記事がほとんどで、前までは上手くいっていたんだろうなーみたいな記事がたくさんある。しかも自分は所詮アプリケーションエンジニアなのでデバッグしようにもキツイ。。 とりあえず、公式の手順も上手くいかないがこの手順に絞ってエラーを解決していこうと考えた。(この時点でだんだんと Realms が選択肢に。。しかも俺結局 900 円払うことになってるじゃん。。) このドキュメントにそって作るんだ!他は信頼しすぎるな! 公式
手順通りに実行
1. 一般ユーザを作成
とりあえず root ユーザはよろしくないし、今後の手順でも root ユーザは怒られるので一般ユーザを作成してログイン。
- ユーザを追加
adduser takeru
takeru
ユーザのパスワード変更passwd takeru
takeru
を全権限をもつ Group(Wheel)に追加する。sudo gpasswd -a takeru wheel
- ユーザの切り替え
su takeru
- root ディレクトリに権限がないのでホームディレクトリに移動。
cd
2.wget -q -O - https://get.pmmp.io | bash -s -
を実行
この時Please Install ***
と出たら大人しくインストールする。
以下のように流せばおそらく必要なものは揃う。
sudo yum install -y make;
sudo yum install -y autoconf;
sudo yum install -y automake;
sudo yum install -y m4;
sudo yum install -y bison;
sudo yum install -y gcc-c++
sudo yum install -y git;
sudo yum install -y cmake;
sudo yum install -y libtool";
ミドルウェアが足りてないと ↓
コンパイルが終わったら、カレントディレクトリが以下のようになる。
3.php7 をインストール
- tar をダウンロードする
wget https://jenkins.pmmp.io/job/PHP-7.3-Aggregate/lastSuccessfulBuild/artifact/PHP-7.3-Linux-x86_64.tar.gz
- tar を展開
tar xfz PHP-7.3-Linux-x86_64.tar.gz
成功すると~/bin/php7/bin
に php 関連のファイルができているので確認する。
4.実行してみる
~/
に戻る。./start.sh
を実行する。 すると./bin/php7/bin/php: error while loading shared libraries: libbz2.so.1.0: cannot open shared object file: No such file or directory
というメッセージが出て実行できない。 いろいろ検索してみるとこんなblogが見つかった。 くそ!ライブラリに不具合があったトラップか!と素直にsudo yum install -y bzip2-devel
する。 そのあとにsudo ln -s find /usr/lib64/ -type f -name"libbz2.so.1*" /usr/lib64/libbz2.so.1.0
する。
5. 改めて実行してみる
ようやく ./start.sh
で実行できるようになり初期設定のフローが始まる。
総括
10/21 現在。Realms で生活しています。 どうやら server.properties もロクに読み込まれていない(spwanMobs とか,シード値とかのプロパティが効いていない)っぽいし、何より情報が少なすぎてこんなんなら Realms にするわ!ってなりました。 誰かのお役に立てたら幸いです。じゃ、ちょっくら木こりしてきます。