UbuntuでJava版マイクラサーバをサクッと立ててみる

こんにちは。すずともです。
この記事では、WSL版のUbuntuを使いJava版のマイクラサーバを立てていきます。

サーバを立てるきっかけは、友達がうまくいかないと悩んでいたのでやってみたという感じです。ちなみに僕はマイクラやったことないです🙇

そんな僕でもサクッと立てられたので、その方法を紹介します。

# 筆者の環境
筆者はWindows上にあるWSLのUbuntuにてサーバを立てましたが、Ubuntu機でもほとんど同じ手順で立てることが可能です。

OS：Windows 10 Professional Build 10.0.19042.746
CPU：Intel Core i7-8700K
RAM：16GB

WSL Ubuntu：Ubuntu 20.04
Minecraft server 1.16.5

# 流れ
以下の流れで立てていきます。Ubuntuがインストール済みの方は2へと進んでください

1. WSL版Ubuntuのインストール
2. javaのインストール
3. マイクラサーバデータのダウンロード
4. 仮実行
5. EULAに同意
6. 実行

# 1.WSL版Ubuntuのインストール
スタートボタンからMicrosoft Storeを起動します。「Ubuntu」と検索し、出てきたものをインストールします。僕はUbuntu 20.04 LTSをインストールしましたが、どれでも動くと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/255360/c47eeb41-55fa-f31d-820e-173abe8e5897.png)

インストールが済んだら、スタートボタンからUbuntuを起動します。下のような黒いウィンドウが出てきたらUbuntuの起動完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/255360/e4c726a0-df28-d737-46ed-d1588843bc14.png)

# 2.javaのインストール
まずは、パッケージのアップデートをします。

```console
$ sudo apt update
```

そして次のコマンドを実行するとJavaがインストールできます。簡単ですね。

```console
$ sudo apt install default-jre
```

次のコマンドを実行してバージョンが出ればJavaインストールの完了です。

```console
$ java --version
```

# 3.マイクラサーバデータのダウンロード
今回はサクッと立てるのが目標なのでHomeディレクトリ直下にファイルをダウンロードします。

次のコマンドを実行して、ダウンロードを行います。
URLは長いのでコピペするのがおすすめです。

```console
$ curl -LOS https://launcher.mojang.com/v1/objects/1b557e7b033b583cd9f66746b7a9ab1ec1673ced/server.jar
```

このコマンドでは1.16.1バージョンをダウンロードしますが、新しいバージョンが出ている場合はURLを変更する必要があります。
下記のサイトにアクセスして、「～minecraft_server.x.xx.xをダウンロードして～」というところのリンクとなっているURLに置き換えてください。Chromeでは下記の画像のように右クリック→「リンクのアドレスをコピー」とするとURLをコピーできます。

[Download server for Minecraft](https://www.minecraft.net/ja-jp/download/server)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/255360/6d0b8a09-b2a0-e14a-3338-e31d99d3a033.png)

# 4.仮実行
サーバを起動してみます。以下のコマンドを実行してください。

```console
$ java -Xmx1024M -Xms1024M -jar server.jar nogui
```

すると次のようにエラーが表示されていると思います。

```console
[21:29:28] [main/ERROR]: Failed to load properties from file: server.properties
[21:29:28] [main/WARN]: Failed to load eula.txt
[21:29:28] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
```

これは、使用許諾契約に同意していないため起こるエラーです。仮実行すると`eula.txt`が作成されます。ここで次のステップです。

# 5.EULA（使用許諾契約）に同意
eula.txtを編集して、`eula=false`を`eula=true`に変更します。Linuxのエディタとして`Vim`が有名ですが、初心者には難しいのでより直感的な`nano`を使います。

次のコマンドを実行するとテキストエディタに変わります。

```console
$ nano eula.txt
```

上下キーを使って`eura=false`の所を`eura=true`に変更して`ctrl+S`で保存、`ctrl+X`でエディタを終了してください。

# 6.実行
再度さっきのコマンドを実行してください。

```console
$ java -Xmx1024M -Xms1024M -jar server.jar nogui
```

いろいろ画面に表示された後に、下のような文章が出力されたら起動完了です！お疲れさまでした。

```console
[21:51:58] [Server thread/INFO]: Done (18.549s)! For help, type "help"
```

# 7.ポート開放
ここからはUbuntuを単独のPC上で実行させたときに必要なポート開放の手順です。WSL版では基本的にすべて空いているためこの手順は不要です。

デフォルトでは`25565`と`25575`を使います。このポートを開放します。
以下のコマンドを実行してください。ポートが解放されます。

```console
$ sudo ufw allow 25565
% sudo ufw allow 25575
```

自宅外の人とプレイする際にはルータのポートも開放（ポートフォワーディング）する必要があります。その手順についてはルータの説明書などをご覧ください。
自宅のサーバのポートを開放すると、外部から不正にアクセスされる危険性もあります。あくまでも自己責任で行ってください。

# さいごに
これでサーバを立てることができました。
WSLでサーバを立てた場合で同じパソコンでマイクラを遊ぶ場合、マルチプレイから「ダイレクト接続」または「サーバを追加」でサーバアドレスを`localhost`と入力すると接続できるはずです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/255360/b1d91687-1864-43d3-49d3-add4a26cebdd.png)

接続できれば無事成功です！
接続できない場合は、サーバが起動しているか、アドレスを入力し間違えていないかをもう一度確認してください。

マイクラ買ってもいない僕でもマイクラサーバをサクッと立てることができました。やり方さえわかってしまえば10分もかからないと思いますよ(o^―^o)ﾆｺ
勢いでマイクラ買ってしまいました()