Skip to content

Coderdojo三島沼津( https://github.com/coderdojo-mishima-numazu )から移管したマイクラサーバー構築スクリプトです。

Notifications You must be signed in to change notification settings

urushibata/minecraft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

マインクラフトサーバー構築方法 (DojoPaaS利用者向け)

CoderDojo Japan が提供する DojoPaaS を使って、
マインクラフトサーバー (以下マイクラサーバー) をカンタンに構築するスクリプトです。

マイクラサーバーを初めて構築する方は、以下のライセンス条項を確認してください。
MINECRAFT エンド ユーザー ライセンス条項

私はサーバーはもちろん、マイクラ自体も初心者のため、不備があればご指摘ください。

本スクリプトを使ったマイクラサーバー構築の流れ

**よくわからなければ読み飛ばして結構です。スクリプトを実行するだけ

本スクリプトでは次の流れでマイクラサーバーを立てます。

  1. Docker でマイクラサーバーを立てます
    • 使用する Docker イメージは itzg/minecraft-server です。
    • ドキュメントを読むとパラメータを変えるだけで色々なタイプのマイクラサーバーが起動できるようです。感謝。
  2. Ubuntu (ホスト) 80番ポートを、マイクラサーバー用の25565番ポートにマッピングします
    • 詳細は official ディレクトリと setup ディレクトリでご確認できます。
  3. マイクラサーバーの設定ファイルは /var/mc_official_data/ にあります (Docker ボリュームとしてマウントされています)
    • 設定ファイルについてはあとで説明します。

今のところ公式版のみです。今後、色々な派生サーバーを試せたらなと思います。

構築手順

CoderDojo 向けに提供されている DojoPaaS を使って、まずはサーバーを作っておきます。
DojoPaaS の使い方は coderdojo-japan/dojopaas をご参照ください。 また、Minecraftユーザーを1つ用意してください。

Minecraftユーザーとサーバーが無事作れたら、SSH でサーバーにログインします。

Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-142-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage
New release '18.04.4 LTS' available.
Run 'do-release-upgrade' to upgrade to it.

Last login: Sat Apr  4 07:50:39 2020 from 123.1.58.13
ubuntu@ubuntu:~$

以下のコマンドを実行します。実行する場所は任意ですが、よくわからなければログインした場所 (homeディレクトリ) で大丈夫です。

ubuntu@ubuntu:~$ git clone https://github.com/urushibata/minecraft.git

そうすると minecraft というディレクトリができます。その中の official ディレクトリに移動します。

ubuntu@ubuntu:~$ cd minecraft/official

official_build.sh というシェルスクリプトを実行します。するとマイクラサーバーのインストールと起動が行われます。デフォルトでは公式の最新バージョンです。
数分待つと、途中で管理者ユーザーの設定を求められます。最低1ユーザー入力してください。
最後に 『Creating minecraft ... done』 と表示されれば成功です。

ℹ️ Spigot Server
Spigotサーバーを構築する場合は spigot ディレクトリに移動し、 spigot_build.sh を実行してください。
ubuntu@ubuntu:~$ ./official_build.sh
Get:1 http://security.ubuntu.com/ubuntu xenial-security InRelease [109 kB]
Hit:2 http://jp.archive.ubuntu.com/ubuntu xenial InRelease

...

登録するオペレーター(管理者)を入力してください。
操作を選択してください。(a:追加, d:削除, y:決定 , c:キャンセル):a <-- 追加
追加するユーザーIDを入力してください。:operator-user <-- ユーザーIDを入力
登録するオペレーター(管理者)を入力してください。
1. operator-user
操作を選択してください。(a:追加, d:削除, y:決定 , c:キャンセル):y <-- ユーザーがセットされたら決定します。

...

Digest: sha256:ce18748c8657dc9ae25e334e27182ad64706ebc73aa0c092e95fb6112c4d3386
Status: Downloaded newer image for itzg/minecraft-server:latest
Creating minecraft ... done

最後に Minecraft アプリ (クライアント) を立ち上げ、接続確認します。接続できるのは製品版のみです。
もし、初めてサーバーを起動した場合、ログインできるのは先程設定した管理者ユーザーのみです。

title

multi

server

サーバーアドレスに『サーバーのIPアドレス:80』を入力します。サーバー名は任意です。

以上でマイクラサーバーの立ち上げは終了です。お疲れ様でした!

マイクラサーバーの設定とコマンド

マイクラサーバーの設定ファイルや、起動・停止コマンドなどについてまとめてます。

マイクラサーバーの設定ファイル

設定ファイルは /var/mc_official_data/にあります。
ここのファイルを修正し、マイクラサーバーを再起動すると反映されます。
バックアップしたい場合は scp コマンドなどでダウンロードしてください。

マイクラサーバーの再起動

ubuntu@ubuntu:~$ cd ~/minecraft/official;docker-compose restart

マイクラサーバーの停止

ubuntu@ubuntu:~$ cd ~/minecraft/official;docker-compose stop

マイクラサーバーの全削除

マイクラサーバーを全部消したい時

ubuntu@ubuntu:~$ cd ~/minecraft/official;docker-compose down --rmi all

ホワイトリストの有効化

ホワイトリストが無効になっていると不特定多数の人がログインできてしまいます。
管理者でログインして、以下のコマンドを打ちホワイトリストを有効化します。

/whitelist on

ホワイトリストにユーザーを追加する場合

/whitelist add user-id

whitelist1 whitelist2

データのバックアップ

クラウドにデータをアップロードするプログラムとクラウドの古いデータを削除するプログラムがあります。cronなどで自動起動させておくと定期的にバックアップすることができます。

起動条件

  • rcloneがインストールされており、クラウドストレージに接続されていること。
  • syslogデーモンが起動していること。

backup/backup_to_remote.sh

クラウドストレージにバックアップするシェルスクリプトです。

backup/delete_old_backup.sh

古くなったバックアップデータを削除します。

backup/backup_list

バックアップ対象のファイルリストです。

backup/config

設定ファイルです。

設定値 説明
BACKUP_ROOT_PATH バックアップしたいマインクラフトのパス
/var/mc_official_data
RCLONE_DEST_PATH [rcloneで作成したremote_drive_name]:バックアップ先ディレクトリパス
remote_drive:Public/sample/MineCraftBackupData
SYSLOG_FACILITY syslogのファシリティー。特にわからなければブランク。
SAVE_DAYS バックアップデータの保管期間(単位:日)

About

Coderdojo三島沼津( https://github.com/coderdojo-mishima-numazu )から移管したマイクラサーバー構築スクリプトです。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published