LoginSignup
14
19

More than 1 year has passed since last update.

Minecraft サーバを AWS で作る

Last updated at Posted at 2020-05-29

Minecraft のサーバを作る。いろんな方が既に記事を書いているので目新しさはない。この組み合わせで動作したという確認。

環境

(2020/05/29 記事初出時)
- AWS Tokyoリージョン t2.midium
- Ubuntu 20.04
- minecraft_server_1.15.2.jar
- openjdk-14-jre

( 2021/09/05 再確認時 )
- AWS Tokyoリージョン t2.midium
- Ubuntu 20.04
- minecraft_server_1.17.1.jar
- openjdk-16-jre

-

Minecraft サーバとは

Minecraft はネットワークで通信してマルチプレイができる。マルチプレイをするにはネットワーク内でMinecraftをプレイしているマシンを1台公開してそこに他のプレーヤがつなげるやりかたと、ネットワーク内でサーバ専用サービスを実行するホストを作りサーバにするやりかたの2つがある。

Minecraft でマルチプレイをするには Minecraft の系統と、バージョンを合わせる必要がある。

Minecraft の系統

マルチプレイをするときには、系統を合わせないといけない。今の主な系統は2つ

  • Java 版
  • 統合版 (Bedrock Edition)

系統は、プレイする全員、および、サーバその系統に合わせる必要がある。
なお、現在公開されているサーバのソフトウェアは Java 版系統。
統合版のサーバも公開されている( https://help.minecraft.net/hc/en-us/articles/360035131651-Dedicated-Servers-for-Minecraft-on-Bedrock- ) が、アルファ版。

ちなみに、上記以外の系統も存在する。サーバソフトウェアは公開されていないが、ピア2ピア的にマルチプレイができる。その場合はそれぞれの系統同士でしかマルチプレイできない。

  • ブラウザ版
  • Raspberry Pi edition
  • Earth edition
  • Education edition
  • Legacy console editon (現在、PS4,Nintendo Switch等は統合版にアップデート、それ以外の旧いプラットフォームではLegacy conosole edition 同士でも異機種だとマルチプレイできないぽい)
  • New Nintendo 3DS Edition

  • 他に Minecraft China というのがあるがナンダ? https://minecraft-ja.gamepedia.com/Minecraft_China

バージョン

サーバのバージョンと、マルチプレイの参加者の Minecraft のバージョンを合わせる必要がある。
バージョンはJava版において、2020/5/29現在最新のものは以下の2つ。

  • 1.15.2 (正式版)
  • 20w21a (開発版1.16のスナップショット)

であるが、こちらからダウンロード

(2021/09/05 に確認時点では 1.17.1 )

できるサーバのバージョンは正式版の最新のものである 1.15.2。

(2021/09/05 に確認時点では 1.17.1 )

それ以外の old バージョンや、開発版はこちらから。

サーバの動作環境

java で動作するので Windows / Mac / Linux で動作する。もちろん、Raspsberry Piも!

サーバを動かすのは難しい?

https://minecraft.gamepedia.com/Tutorials/Setting_up_a_server
によると、

Setting up a server takes some time, and some technical knowledge. Don't try to set up a server unless you have some basic computer and networking abilities.

とあるけれども、試してみたらあっさり動いた。

AWS サーバを起動

まずは TOKYOリージョン、t2.midium を利用して、Ubuntu 20.04を起動する。

ログイン後、


$ sudo apt update
$ sudo apt upgrade 

をしたあと、Java だけインストール。
とりあえずUbuntu20.04で最新のJREを入れてみた。


$ sudo apt install openjdk-14-jre

(2021/09/05 では、openjdk-14-jre と 1.17.1 の組み合わせで以下のエラーが出た。上記を sudo apt install openjdk-16-jre と代えて解決。)

Error: LinkageError occurred while loading main class net.minecraft.server.Main
    java.lang.UnsupportedClassVersionError: net/minecraft/server/Main has been compiled by a more recent version of the Java Runtime (class file version 60.0), this version of the Java Runtime only recognizes class file versions up to 58.0

https://www.minecraft.net/ja-jp/download/server/
からサーバをダウンロード。

image.png

リンクをマウスで右クリックしてアドレスを取得、ssh で以下に貼り付けた。


$ wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

起動してみる


$ java -Xmx1024M -Xms1024M -jar server.jar nogui
[08:18:47] [main/ERROR]: Failed to load properties from file: server.properties
[08:18:47] [main/WARN]: Failed to load eula.txt
[08:18:47] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

という結果になった。


$ ls -alh

としてみたら、


total 35M
drwxr-xr-x 5 ubuntu ubuntu 4.0K May 28 08:18 .
drwxr-xr-x 3 root   root   4.0K May 28 07:51 ..
-rw-r--r-- 1 ubuntu ubuntu  220 Feb 25 12:03 .bash_logout
-rw-r--r-- 1 ubuntu ubuntu 3.7K Feb 25 12:03 .bashrc
drwx------ 2 ubuntu ubuntu 4.0K May 28 07:56 .cache
-rw-r--r-- 1 ubuntu ubuntu  807 Feb 25 12:03 .profile
drwx------ 2 ubuntu ubuntu 4.0K May 28 07:51 .ssh
-rw-r--r-- 1 ubuntu ubuntu    0 May 28 08:01 .sudo_as_admin_successful
-rw-rw-r-- 1 ubuntu ubuntu  181 May 28 08:18 eula.txt
drwxrwxr-x 2 ubuntu ubuntu 4.0K May 28 08:18 logs
-rw-rw-r-- 1 ubuntu ubuntu  35M Jan 17 10:06 server.jar
-rw-rw-r-- 1 ubuntu ubuntu  940 May 28 08:18 server.properties

とあって、eula.txt ができているようだ。


$ vim eula.txt 

として、中身の


#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Fri May 29 19:21:06 JST 2020
eula=false

false を true に書き換えて保存。

もう一度起動


$ java -Xmx1024M -Xms1024M -jar server.jar nogui
[08:20:14] [main/WARN]: Ambiguity between arguments [teleport, destination] and [teleport, targets] with inputs: [Player, 0123, @e, dd12be42-52a9-4a91-a8a1-11c01849e498]
[08:20:14] [main/WARN]: Ambiguity between arguments [teleport, location] and [teleport, destination] with inputs: [0.1 -0.5 .9, 0 0 0]
[08:20:14] [main/WARN]: Ambiguity between arguments [teleport, location] and [teleport, targets] with inputs: [0.1 -0.5 .9, 0 0 0]
[08:20:14] [main/WARN]: Ambiguity between arguments [teleport, targets] and [teleport, destination] with inputs: [Player, 0123, dd12be42-52a9-4a91-a8a1-11c01849e498]
[08:20:14] [main/WARN]: Ambiguity between arguments [teleport, targets, location] and [teleport, targets, destination] with inputs: [0.1 -0.5 .9, 0 0 0]
[08:20:14] [Server thread/INFO]: Starting minecraft server version 1.15.2
[08:20:14] [Server thread/INFO]: Loading properties
[08:20:14] [Server thread/INFO]: Default game type: SURVIVAL
[08:20:14] [Server thread/INFO]: Generating keypair
[08:20:15] [Server thread/INFO]: Starting Minecraft server on *:25565
[08:20:15] [Server thread/INFO]: Using epoll channel type
[08:20:15] [Server thread/INFO]: Preparing level "world"
[08:20:15] [Server thread/INFO]: Found new data pack vanilla, loading it automatically
[08:20:15] [Server thread/INFO]: Reloading ResourceManager: Default
[08:20:47] [Server thread/INFO]: Loaded 6 recipes
[08:20:47] [Server thread/INFO]: Loaded 825 advancements
[08:20:53] [Server thread/INFO]: Preparing start region for dimension minecraft:overworld
[08:20:53] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[08:20:53] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[08:20:54] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[08:20:54] [Server-Worker-1/INFO]: Preparing spawn area: 0%
[08:20:55] [Server-Worker-1/INFO]: Preparing spawn area: 1%
[08:20:55] [Server-Worker-1/INFO]: Preparing spawn area: 2%
[08:20:56] [Server-Worker-1/INFO]: Preparing spawn area: 4%
[08:20:56] [Server-Worker-1/INFO]: Preparing spawn area: 5%
[08:20:57] [Server-Worker-1/INFO]: Preparing spawn area: 7%
[08:20:57] [Server-Worker-1/INFO]: Preparing spawn area: 10%
[08:20:58] [Server-Worker-1/INFO]: Preparing spawn area: 12%
[08:20:58] [Server-Worker-1/INFO]: Preparing spawn area: 14%
[08:20:59] [Server-Worker-1/INFO]: Preparing spawn area: 17%
[08:20:59] [Server-Worker-1/INFO]: Preparing spawn area: 19%
[08:21:00] [Server-Worker-1/INFO]: Preparing spawn area: 22%
[08:21:00] [Server-Worker-1/INFO]: Preparing spawn area: 24%
[08:21:01] [Server-Worker-1/INFO]: Preparing spawn area: 26%
[08:21:01] [Server-Worker-1/INFO]: Preparing spawn area: 29%
[08:21:02] [Server-Worker-1/INFO]: Preparing spawn area: 32%
[08:21:02] [Server-Worker-1/INFO]: Preparing spawn area: 33%
[08:21:03] [Server-Worker-1/INFO]: Preparing spawn area: 36%
[08:21:03] [Server-Worker-1/INFO]: Preparing spawn area: 38%
[08:21:04] [Server-Worker-1/INFO]: Preparing spawn area: 41%
.
.
.

起動したようだ。

ポート公開

TCP25565 と UDP25565 を開放したら、外部から接続し、プレイできた。

image.png

14
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
19