以前、WSL2環境のDockerなどを使ってMinecraftのサーバを構築してみましたが、結構面倒な作業が多かったのでさすがにこれでは実用性が厳しいなと思っていました。お金を書けないのであればこれぐらいの作業は仕方ないとも思っていました。
そんな中、以下のような情報をみつけました。
balenaCloud
というサービスを使うことで、RaspberryPi環境のMinecraftServerのイメージを作成できるという内容でした。手順はかなり簡単なものだったので、今回はこちらの情報をもとにMinecraftServerを構築してみることにしました。
以前までよく使用されていたetcher
という名前のSDカードの書き込みアプリは、現在balena etcher
と名前が変更になっているので、その印象がある方も多いと思います。
RaspberryPiを使うのであれば、手順もかなり少なく(ほぼワンクリックに近い!)構築できるのでかなりお勧めです。特に構築時にネットワーク設定ができる点、起動すればサーバープロセスも自動起動する点がお勧めポイントになります。あとこのイメージはVanillaサーバ(素のイメージ)ではないのでModやPluginも使えるみたいです。(Pluginしか試していませんが)
注意点としては、Raspberry Pi 4B 1GBモデル以上のメモリ搭載が動作推奨となります。
balenaCloudにログインする
balenaCloud
は以下からログインすることができます。
このサービスは、簡単にいうとネットワーク上で作成した設定で、マイクロデバイス用のサーバイメージを作成し、それをダウンロード、SDカードに書き込むことでデプロイができるといったサービスのようです。(dockerベース)
また、サービスのダッシュボードで起動したRaspberryPiなどのデバイス情報をみることができるようにもなります。結構便利っぽい。無料版では最大10台のデバイスを管理できるようです。
アクセスすると以下のページが表示されます。ここで、上部にある【SignUp】ボタンをクリックします。
するとユーザ登録画面になります。GitHub
、Google
、Email
から登録することができます。どの方法でもよいので登録を行います。
GitHub
からMinecraftServerのイメージをセットアップする
参考にした記事のとおりであれば、アプリケーションの作成(サーバイメージ)などを行っていくような手順になるのですが、実はこの手順は不要でした。以下のGitHub
ページにアクセスします。
そして、下の方にスクロールを行い、README.md
の内容を見ていきます。ここに方法が記載されていますが、それをみながら進んでいくと
Setup and use
の節に【One Click Deployment】ボタンがあります。これを押すことで、balenaCloud
のアカウントがあれば、新しいサーバイメージがデプロイされます。
クリックするとbalenaCloud
のダッシュボード画面に以下のようなダイアログが表示されます。ここで【Create and deploy】ボタンをクリックすればOKです。
すると以下のような画面になります。ここで【Add device】ボタンをクリックするとアプリケーション(サーバイメージ)の設定を行えます。
クリックして以下のようなダイアログが表示されます。RaspberryPiからWiFiを使用する場合にはNetwork Connection
のラジオボタンを【Wifi+Ethernet】にして、
SSIDとWiFIのパスフレーズを入力して、【Download balenaOS】ボタンをクリックします。これでRaspberryPiに挿入するSDカードのイメージがダウンロードできます。
基本的にこれで作業はほぼ完了です。
作成したイメージをSDカードに書き込む
あとは、ダウンロードしたOSイメージのファイルを
Raspberry Pi Imager
を使用してSDカードに書き込んでいきます。
これで完了です。作成した、SDカードをRaspberry Piに挿入して起動を行います。
すると、balenaCloudのダッシュボードのDeviceタブから以下の様にみえるようになります。
接続されたデバイスのエントリをクリックすると
サーバのIPアドレスなどのネットワーク情報やサーバプロセスの情報の状態、CPUやメモリの使用状況が表示されます。また、この画面からリブートやシャットダウンといったオペレーションも行えます。
そのままインストールしてしまったので、アプリケーションの名前がnameless-wood
となっているので気になるようであれば名前を変更しておきます。
名前の部分の隣にある歯車のボタンをクリックすればアプリケーションの名前を変更できます。今回はbalena-minecraft-server
と変更しておきました。
変更後は以下のように名前が変更されて表示されています。
Minecraft Java Editionからサーバに接続を行う
サーバは起動後にMinecraftサーバを自動的に起動してくれるので、あとはMinecraft(クライアント)から接続を行うだけです。
マルチプレイで、【サーバ接続】ボタンをクリックし、サーバ名をbalenaminecraftserver.local
を入力すると、同一LAN内のRaspberryPiを検出して
サーバが検出され、
サーバがリストに表示され、サーバ名をクリックすると接続します。
無事にサーバに接続することができました。これでサーバの構築は完了です。
プラグインを設定する
今回構築したサーバはログインのコンソールのアクセスがsshではできないので、PluginをインストールするにはSCP
を使用することになります。Windowsの場合にはWinSCP
を使用してログインし、ファイルをコピーしていきます。
WinSCP
で接続ダイアログを開き
- 転送プロトコル … SCP
- ホスト名 … balenaminecraftserver
- ポート番号 … 22
- ユーザ名 … root
- パスワード … balena (参考ドキュメントと値が異なるので注意)
上記の設定で接続を行うと
サーバに入りファイル転送を行えます。/serverfiles/plugins/
にPluginファイルをコピーして、再起動すれば使用できるようになります。
今回はLuckPerms
というPluginを導入してみました。
※サーバへコンソールログインするためにはRCON
が必要になります。
Releases · Tiiffi/mcrcon · GitHub
※WindowsでRCON
を動作させるには以下のバッチファイルから起動する必要もあります。
RCON-Script/launch.bat at master · AlexProgrammerDE/RCON-Script · GitHub
おわりに
以前のエントリよりも格段に少ない手順でMinecraftServerを立ち上げることができました。ネットワークが有線であればほぼワンクリックで完了していると言ってもいいでしょう。RaspberryPiが家に余っているよっていう方であれば、近くのコミュニティなどに寄贈してMinecraftServerにして有効利用してもらうというのもいいのではないかなと思います。