皆様再びこんにちは。前回は Bedrock (旧 Pocket Edition) サーバーを Aternos や Server.pro で作ると大きな制限がかかってしまい、自由に楽しめないと紹介しました(【無料】 Minecraft サーバー構築【サーバー停止無し】)。
【追記】
また、この記事を書いたあとに 【永久無料】 Minecraft サーバー構築 (おすすめ)【停止無し】 記事を書いています。新しい記事のほうが手っ取り早くサーバー作成できますが、少し上級者向けです。GCP が初めて OR わかりやすさ重視の人は、以下の記事でのサーバー構築がおすすめです。
【追記】2024/03/17
サーバーアップデートコマンドを修正しました。whitelist.json -> allowlist.json
今、よくブログで紹介されてる無料マイクラサーバー使ってるんですけど
ふむふむ
誰かがログインしないと、また起動し直さないといけなくて面倒なんですよね
節約のためには仕方ないことだね
電気料金も増える訳だからね
放置できて、好きなときに遊べて、無料のサーバーが欲しいです
そんな夢のようなものないですよね?
では、少し面倒だけど自分で作ってみてはどうかな?
ここで教える通りにやれば、自分だけのマイクラサーバーを作ることができるよ
サーバーを建てるって、僕のような素人でもできるんですか?
ある程度やることはあるけれど、今から教える通りにやれば大丈夫
完全に無料で停止しないマイクラサーバーを作れるよ
すごい!!頑張ってやってみるので教えてください
今回作るサーバー
作成するサーバーの紹介
Realms だとしても、二人で遊ぼうとすると安くて400円ほどかかってしまいますが、今回紹介するサーバーは完全に無料で放置によるサーバー停止もありません!
人数制限はないですが、サーバー自体は弱めなので、恐らく4人ほどでアクティブに遊ぶ程度が限界な気はします。
今回はデジタル庁も採択している Google Cloud (旧 GCP) 上にサーバーを構築します。前回は Google Cloud と対をなすサービスである AWS 上に構築しましたね。
Google Cloud についても、多くの実績があるサービスなので安心です。エンジニアとして仕事をしている現在も、大きくお世話になっているサービスです。
また、Google Cloud では無料期間の制限がありません。半永久的に無料で使用できるので料金を気にせず使用し続けられます。
下記は一人で採掘している動画ですが、特に採掘遅延は感じません。
ただし、今回構築するサーバーが物理的には米国西側に位置するので、前回作成した AWS 上の Minecraft サーバーよりは Ping が遅いです。でも、軽く遊ぶ分には問題ないレベルですね。
事前準備
Minecraft 最新バージョンの確認
下記リンク内から、最新バージョンを確認します。
同意チェックを入れ、「UBUNTU (LINUX) 用 MINECRAFT DEDICATED SERVER ソフトウェア」の下部にある「ダウンロード」ボタンにカーソルを合わせ、ブラウザ左下に表示されるバージョンをメモします。
https://www.minecraft.net/ja-jp/download/server/bedrock
Google Cloud アカウント登録
では早速サーバーを構築を始めます。まずは Google Cloud アカウントの作成です。Google アカウント (Gmail アカウント) は用意しておいてください。
Google Cloud へ登録
アカウント作成
Gmail アカウントを持っている人は、それを利用しても大丈夫です。Googleアカウント(Gmailアカウント)の作成をスキップして Google Cloud のアカウント作成 へスキップしても大丈夫です。
Google Cloud のアカウントを持っていない人は、まず下記リンクからアカウントを作成しましょう。
「無料で開始」 をクリックします。
「アカウントを作成」 を選択。「個人で使用」 を選びます。
「代わりに新しい Gmail アドレスを作成する」 を選択。
各項目を入力し「次へ」を選択。
電話番号認証が必要になることがあるので、SMSが受け取れる番号を入力して「次へ」を選択。
認証が完了し、次のページで生年月日など入力します。完了したら「次へ」を選択。
プライバシー ポリシーと利用規約ページで「同意する」を選択。
Google Cloud への登録
前の手順で作成した Google アカウントを使用して Google Cloud に登録します。
「日本」「個人的なプロジェクト」を選択します。利用規約にチェックを入れ、「続行」を選択。
ステップ 2/2 も各項目を入力し、「無料トライアルを開始」を選択。
クレジットカードの登録
- クレジットカード情報の入力ですが、クレジットカードを持っていない人は こちら から Revolut というアプリをダウンロードしてバーチャルカードを作成しましょう。
※Google Cloud では Kyash は登録できませんでした。Revolut が登録できて Kyash が登録できないということは、デビットカードは登録できてプリペイドカードは登録できないようです。 - 筆者の場合 200 円の仮請求が発生後、すぐに200円が返金されました。なので Revolut を使用する人は 200 円だけ入れておく必要があるかもしれません。
- 今回は無料利用枠の範囲内で使用します。なので、そもそも請求自体がかかりません。この記事の案内通りにサーバーを構築すれば、完全に無料で利用することが可能です。登録する際にどうしても必要となります。
住所について
請求情報として住所を使用します。登録した住所に、何か書類などが送られてくる事はありません。請求情報とはいえ、今回は無料範囲での使用なので、請求自体が発生しません。
検討理由は今回「その他」とし「次へ」を選択します。
以下の問も「その他」でいいでしょう。「次へ」を選択。
最後も回答としては「その他」になりますね。「完了」を選択します。
チュートリアルは不要なのでスキップします。
おめでとうございます!Google Cloud のアカウント作成が完了しました!
サーバー設定
サーバーポート設定
可能な限り一般の方向けの説明にしたいので、Google Cloud の各サービスについての説明などは省き、手順のみ記していきます。
ファイアウォールルールの作成
Minecraft は 19132 のポート開放が必要です。その対応をします。左ペインの 「VPC ネットワーク」内にある「ファイアウォール」を選択。
エラーが起きたとき
エラーなどの画面が表示されたら「続行」や「OK」などを押してください。その後、もし下記の画面が表示されたら「有効にする」を選択します。5分ほど待ったあと、ファイアウォールのページに自動で移動します。
「ファイアウォールルールを作成」を選択します。
自分で変更する項目については下記のとおりです。入力が終わったら「作成」をクリックします。
入力項目
- 名前:minecraft
- 説明:minecraft
- ターゲットタグ:minecraft
- 送信元 IPv4 範囲:0.0.0.0/0
- プロトコルとポート:指定したプロトコルとポート
- ☑ TCP:19132
- ☑ UDP:19132
サーバー構成設定
次に Minecraft を動かすためのサーバーを作ります。画面上部の窓に「gce」と入力し、出てきた「Compute Engine」を選択します。
「インスタンスを作成」を選択。
各項目について、自分で入力する部分を記載します。画像と見比べつつ確認しながら入力してください。
入力項目
- 名前:minecraft
- リージョン:us-west1 (オレゴン)
- マシンタイプ:e2-micro(2 vCPU、1 GB メモリ)
入力項目
- ブートディスク
- OS:Ubuntu
- バージョン:Ubuntu 22.04 LTS (x86/64, amd64 jammy image built on 2022-09-24, supports Shielded VM features)
- ブートディスクの種類:標準永続ディスク
- サイズ(GB):30
入力項目
- 詳細オプション(閉じているので展開します)
- ネットワーキング(閉じているので展開します)
- ネットワークタグ:minecraft
- ネットワーキング(閉じているので展開します)
完了したら「作成」を選択します。
Minecraft サーバー起動
無事に設定が完了し、サーバーが起動開始しました。少し待つとステータスにチェックマークが表示され、利用できる状態になります。
起動が完了したら、「外部 IP」の項目の IP アドレスをメモしておきます。Minecraft でサーバー登録をする際に必要になります。
これが分かると筆者のマイクラにアクセスできてしまうため、IP アドレスは一部隠してあります。
サーバー上での操作
Minecraft サーバーに接続
前の画像の「SSH」を押します。下記のような画面が表示されれば接続成功です。
Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.0-1018-gcp x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Thu Sep 29 09:59:45 UTC 2022
System load: 0.14501953125 Processes: 106
Usage of /: 6.1% of 28.89GB Users logged in: 0
Memory usage: 23% IPv4 address for ens4: 10.138.0.5
Swap usage: 0%
0 updates can be applied immediately.
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
それではコマンドを実行していきます。これからの操作は「貼り付けるやつ」とメモがされているものを、先程出てきた黒い枠にコピペして作業していきます。
コピーは枠内右上のボタンで簡単にできます。貼り付けは普通に Ctrl + V です。
コピペして Enter
sudo su -
サーバーのメモリの少なさをカバーする設定
コピペして Enter
dd if=/dev/zero of=/swap bs=1M count=4096 && \
mkswap /swap && \
swapon /swap && \
chmod -R 600 /swap && \
echo '/swapfile none swap sw 0 0' >> /etc/fstab
3分くらいかかります。
Minecraft 設定
パラメータの調節は各自でしてください。また、バージョンはきちんと最新バージョンを入力してください。
設定項目 | 解説 |
---|---|
minecraft_version | 最初のところでメモした Minecraft 最新バージョン。 |
server_name | サーバー名 自由に自分の好きな名前を付けましょう。 |
game_mode | ゲームモード 次から選びます。 survival creative adventure |
difficulty | 難易度 次から選びます。 peaceful easy normal hard |
allow_cheats | チートを有効にするかどうか true:有効 false:無効 |
permission | 入室した時のキャラクターの権限visitor member operator |
seed | シード値 seed= と、そのままなにも入力しなければいつも通りのランダム生成。 |
コピーして編集して貼り付けて Enter
minecraft_version=
server_name=
game_mode=
difficulty=
allow_cheats=
permission=
seed=
例)↓
minecraft_version=1.19.30.04
server_name=ydak_Minecraft
game_mode=survival
difficulty=easy
allow_cheats=true
permission=operator
seed=
Minecraft のダウンロード・起動
コピペして Enter
mkdir /var/minecraft && cd /var/minecraft/ && \
wget -O bedrock-server.zip https://minecraft.azureedge.net/bin-linux/bedrock-server-${minecraft_version}.zip && \
apt install -y unzip && unzip bedrock-server.zip && \
sed -i -e "s/^\(server-name=\)Dedicated Server/\1${server_name}/g" server.properties && \
sed -i -e "s/^\(gamemode=\)survival/\1${game_mode}/g" server.properties && \
sed -i -e "s/^\(difficulty=\)easy/\1${difficulty}/g" server.properties && \
sed -i -e "s/^\(allow-cheats=\)false/\1${allow_cheats}/g" server.properties && \
sed -i -e "s/^\(level-seed=\)/\1${seed}/g" server.properties && \
sed -i -e "s/^\(default-player-permission-level=\)member/\1${permission}/g" server.properties && \
screen -UAmdS minecraft ./bedrock_server
Minecraft の起動確認
コピペして Enter
screen -ls
下記のように表示されれば Minecraft が起動されています!
There is a screen on:
<数字>.minecraft (09/28/22 14:21:15) (Detached)
1 Socket in /run/screen/S-root.
Minecraft サーバーにログイン
ではいよいよ Minecraft にログインしてみます!
各自持っている端末でログイン
メモしておいた 外部 IP アドレス を使用してログインしてみます。サーバー名はお好きにどうぞ。
おめでとうございます!無事に自作サーバーの Minecraft へログインできました!
あなた専用の Minecraft サーバーです。好きなときに好きなだけ遊べて、しかも無料の自作 Minecraft サーバーの完成です!
一人で遊んでもよし。友達と遊んでもよし。自由に Minecraft ライフをお楽しみください!
Minecraft で急に遊べなくなった(サーバーアップデート方法)
長く遊んでいると「接続できませんでした: サーバーが期限切れです!」といったメッセージが表示され、急に遊べなくなってしまうことがあると思います。
これは、iPhone などで Minecraft アプリのアップデートが実行され、サーバーとバージョンと合わなくなってしまったことが原因です。サーバー側をアップデートすることにより、再度遊べるようにしましょう。
Minecraft 最新バージョンの確認
サーバー構築と同様に この手順で Minecraft の最新バージョンをメモします。
Google Cloud コンソールへログイン
https://console.cloud.google.com から、Google Cloud コンソールへログインします。
画面上部の検索窓に「gce」と入力し結果で出てきた「Compute Engine」を選択します。
「SSH」を選択します。
「SSH 認証鍵を VM に転送しています。」という表示の後、下記のような黒背景の画面になれば正常です。構築時にも見ましたね。懐かしいでしょうか。
Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.0-1018-gcp x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Thu Sep 29 11:11:43 UTC 2022
System load: 0.0 Processes: 108
Usage of /: 21.4% of 28.89GB Users logged in: 1
Memory usage: 47% IPv4 address for ens4: 10.138.0.6
Swap usage: 0%
0 updates can be applied immediately.
では構築時と同様にコマンド実行していきます。
コピペして Enter
sudo su -
下記の<最新バージョン>部分をメモしたものに置き換えます(記号<>は不要)。
コピーして編集して貼り付けて Enter
minecraft_version=<最新バージョン>
例)minecraft_version=1.19.30.04
コピペして Enter
cd /var/minecraft && screen -ls
ここで、 .minecraft の左にある数字をメモします。
下記の <メモした数字> 部分に数字をいれる(記号<>は不要)
コピーして編集して貼り付けて Enter
screen -r <メモした数字>
例) screen -r 5546
コピペして Enter
stop
少し待つと [screen is terminating] と表示され再度入力できる状態になるります。
コピペして Enter
rm -rf bedrock-server*.zip && \
curl -Lo bedrock-server.zip https://minecraft.azureedge.net/bin-linux/bedrock-server-${minecraft_version}.zip && \
unzip -ou bedrock-server.zip -x permissions.json server.properties allowlist.json worlds/* && \
screen -UAmdS minecraft ./bedrock_server && \
screen -ls
下記のように表示されれば Minecraft が無事に起動しています!アップデートお疲れ様でした。
There is a screen on:
<数字>.minecraft (09/28/22 16:07:33) (Detached)
1 Socket in /run/screen/S-root.
まとめ
いかがでしたでしょうか。今回は永久的にずっと無料で使用し続けられます。それにログインしていなくてもサーバーが停止しない Minecraft サーバーを作成しました。サーバーを建てるという敷居は少し高いですが、一度建ててしまえば友達と好きなときに好きなタイミングで遊べるのはとてもいいですね。