2018/9/11、Minecarft BE版(Bedrock Edition)サーバーのアルファ版が公開されたのでConoHaを使って立ててみた。
備忘兼ねて構築手順を書いておく。
この記事の目次
サーバーの準備
まずはConohaで1Gプランのサーバーを建てる。
別にConohaじゃなくてもいいんだけど、Conoha好きだからConohaを使う。
ただそれだけ。
OSはCentOS7.5を使うことにするよ。
このあたりを参考に基本的なセキュリティ対策を施す。
https://qiita.com/Trouble_SUM/items/8591d7388cd7c0a792bc
一般ユーザーを作成
# yum update # useradd -mG wheel minecraft # passwd minecraft
sshdの設定はお好みに合わせて。
公開鍵認証のみにしておくといいんじゃないかな。
ちなみにSELinuxは無効にしてます。
Minecarft BE版(Bedrock Edition)サーバーソフトウェアのダウンロードと依存パッケージの準備
ここからは先に作成した一般ユーザー(minecraft)で。
以下のサイトでサーバーソフトウェアが公開されているので、ホームディレクトリにダウンロードしてくる。
https://minecraft.net/en-us/download/server/bedrock/
$ wget https://minecraft.azureedge.net/bin-linux/bedrock-server-1.6.1.0.zip
ダウンロードしたzipファイルを適当なディレクトリに解凍する。
$ mkdir bedrock-server $ unzip -d bedrock-server bedrock-server-1.6.1.0.zip
OpenSSL1.0.0のインストール
how to読むと、ここで起動コマンドを入れればおしまいなんだけど、実際は以下のようにエラーが出てくる。
$ cd bedrock-server $ LD_LIBRARY_PATH=. ./bedrock_server ./bedrock_server: error while loading shared libraries: libssl.so.1.0.0: cannot open shared object file: No such file or directory
なんかOpenSSLのバージョン1.0.0が必要みたいなのでソースからインストールする。
この辺が参考になるよ。
あ、インストールはrootユーザーでやってね。
https://qiita.com/shadowhat/items/68fd55b532c04b13acf5
gccライブラリのバージョンアップ
もう一度起動してみるとさらにエラーが出てくる。
$ cd bedrock-server $ LD_LIBRARY_PATH=. ./bedrock_server ./bedrock_server: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by ./bedrock_server) ./bedrock_server: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./bedrock_server) ./bedrock_server: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./libCrypto.so) ./bedrock_server: /usr/local/ssl/lib/libcrypto.so.1.0.0: no version information available (required by ./libCrypto.so)
今度はgccのライブラリのバージョンアップが必要みたいなので、gccの最新版をソースからインストールする。
もちろんこれもrootユーザーで。
https://qiita.com/knutpb1205/items/fc6dbc15fbd052f7560a
ボクはmakeでエラーが出たんだけど、g++をインストールしたら解決した。
# yum install gcc-c++
ちなみにmakeは非常に時間がかかる・・・
1時間はかからなかったと思うけど、実際かなりかかった。
インストールしたgccのライブラリlibstdc++.so.6.0.xxを /usr/lib64/にコピー
# cp /usr/local/src/gcc-8.2.0/build/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.25 /usr/lib64/
そしてシンボリックリンクを作り直す
# cd /usr/lib64/ # mv libstdc++.so.6 libstdc++.so.6.bak # ln -s libstdc++.so.6.0.25 libstdc++.so.6
このあたり参考に
https://www.saintsouth.net/blog/update-libstdcpp-on-centos6/
サーバーの起動
ここまでやってやっとサーバが起動するようになった。
まだひとつだけエラーが残ってるけど、特に影響なさそうなので見なかったことにする。
firewalldのポート解放
最後にfirewalldのポートを開けてやる。
そうしないと外部から接続できないもんね。
# firewall-cmd --add-port=19132/udp --zone=public --permanent # firewall-cmd --reload # firewall-cmd --list-all
firewalldの設定についてはこのあたり参考になるよ。
https://eng-entrance.com/linux-centos-port
注意:Minecraft Bedrock Edition Serverはまだアルファ版です!
ダウンロードページやhow toファイルにも明記されてるけど、現時点(2018/9/24)ではMinecraft Bedrock Edition Serverは評価目的のアルファ版です。
意図しない不具合や重大なバグが潜んでいる可能性があります。
そのあたりしっかりと認識した上で、自己責任で運用してください。