真夜中に突然「マイクラサーバーを立てたい!!」という欲求が抑えられなくなり、AWSで立ててみました。
なんか地味に躓いたのでメモとして残します。
参考ページ
AWSのEC2でMinecraftのサーバーを構築したヾ( ノシ*°ヮ。)ノシ
[Linux] AmazonLinuxに、最新のJavaをインストールする
EC2のインスタンスを生成
インスタンスタイプの選択はsmall以上を選択。
microだと動かないらしい...
(数人のアクセスであればsmallでもいけそう)
インスタンスの設定、ストレージの追加はそのままで。
タグの追加は各自任意で。
セキュリティグループの設定は以下の内容で追加。
タイプ : カスタムTCP
プロトコル : TCP
ポート範囲 : 25565
ソース : 0.0.0.0/0
キーペアの作成に関しては任意の名前で作成しローカルに保存。
設定の表示が出てこない場合は、左メニューからキーペアを選択し、作成。
これにて生成完了です!
インスタンスにIPアドレスを割り当て
新しいアドレスの割り当てから Amazon プール を選択。
インスタンスとIPアドレスを関連付けます。
これで設定完了です。
サーバー立ち上げ
sshで生成したインスタンスに接続します。
先ほどダウンロードしたキーペアのあるディレクトリで、以下コマンドを実行。
$ chmod 400 (キーペアのファイル名).pem
$ ssh -i (キーペアのファイル名).pem ec2-user@(ここに Elastic IP を記します)
続いてjava等のセッティング。
以下コマンドを実行。
$ sudo yum update -y
$ sudo yum -y install git
$ sudo yum install java-1.8.0-openjdk.x86_64
サーバーのjarをダウンロードします。
自分はバージョン1.12.2を選択。
コマンドの1.12.2の部分を他のバージョンに変えることも可能です。
$ wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/minecraft_server.1.12.2.jar
サーバーを一度実行します。
java -Xmx1024M -Xms1024M -jar minecraft_server.1.12.2.jar nogui
ここで以下のエラーが発生。
Exception in thread "main" java.lang.UnsupportedClassVersionError: net/minecraft/server/MinecraftServer : Unsupported major.minor version 52.0
原因はjavaのバージョンが8でなく、7で実行されていたことでした。
以下コマンドでバージョンを切り替え。
sudo alternatives --config java
これで8に切り替え、再度実行すると、うまくいくかと思います。
次に以下コマンド実行後、eula=falseをtrueに変更し、利用規約に同意します。
vi eula.txt
最後にサーバーを立ち上げます。
$ java -Xmx1024M -Xms1024M -jar minecraft_server.1.12.2.jar nogui
いざ接続
マイクラのクライアントを起動し、マルチプレイからサーバーのIPを指定すると...
繋がりました!
昔リアルサーバー上で立てたときにあんなに苦労したのは一体..ってぐらい簡単でした!すごいっすね!