【Minecraft】dockerを使ってBedrock serverを立ち上げる
どうも。fkdm(@fkdm88)です。我が家の小学生と保育園のキッズはマインクラフトというゲームに夢中。著名Youtuberのプレイ動画を観ながら、躍起になって毎日自分たちの世界を開拓している毎日です。
このゲーム、プログラミング思考も養われるとのことでゲームに寛容な私は自由にやらせています。たしかにプレイしている様子をみていると、他人の模倣をするだけでもそこそこ頭を使いそうな感じ。しかもサーバを立ち上げると協力プレイができるというのです。
キッズたちにせがまれたのと、(遅ればせながら)自分自身がMinecraftというゲームに興味を持ち始めていたのもあり、自宅PCサーバに協力プレイするためのサーバを立ち上げるに至りました。
本記事ではDockerを使ってBedrock Serverを立ち上げます。
Minecraft の種類
このMinecraftというゲームには、主にPCでプレイするJE版(Java Edition)とWindows/Switch/スマホでプレイするBE版(Bedrock Edition)が存在しており、今回記事ではBedrock Editionが対象となります。
Java EditionのMinecraftとは接続できませんのでご注意ください。
Docker
みんな大好きdocker。バージョンは次の通りです。
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=22.04
DISTRIB_CODENAME=jammy
DISTRIB_DESCRIPTION="Ubuntu 22.04.1 LTS"
$ docker version
Client: Docker Engine - Community
Cloud integration: v1.0.29
Version: 20.10.18
API version: 1.41
Go version: go1.18.6
Git commit: b40c2f6
Built: Thu Sep 8 23:11:43 2022
OS/Arch: linux/amd64
Context: desktop-linux
Experimental: true
Server: Docker Desktop 4.12.0 (85629)
Engine:
Version: 20.10.17
API version: 1.41 (minimum version 1.12)
Go version: go1.17.11
Git commit: a89b842
Built: Mon Jun 6 23:01:23 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.8
GitCommit: 9cd3357b7fd7218e4aec3eae239db1f68a5a6ec6
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
$ docker compose version
Docker Compose version v2.10.2
Bedrock serverのインストール方法
Bedrock serverは、公式サイトからブツをインストールして起動すればよいだけで、dockerを使わずとも比較的かんたんにサーバを立ち上げることが可能のようです。
実は私も、最初はWindowsマシンでサーバをDLしてexeを叩いておくだけで運用していました。が以下理由でdocker運用に切り替えることにしました。
- Minecraftアプリのバージョンアップに追従しないと接続ができない
⇛ 定期的に更新を確認し、更新があればサーバも更新する仕組みを作りたい - PC再起動したときや不意の強制終了のたび手動で実行ファイルを開始する必要がある
⇛ サービスとして自動起動する運用としたい
Docker composeを探す
Docker composeのよいところ。大抵のものは自分でコンテナを作らずとも、Dockerhubを漁れば見つかるということです。便利。
早速さがしてみると、ありましたありました。
https://hub.docker.com/r/itzg/minecraft-server
docker-compose.yml はこんな感じです。
version: "3"
services:
mc-bedrock-server:
image: itzg/minecraft-bedrock-server:latest
ports:
- 19132:19132/udp
environment:
EULA: "TRUE"
GAMEMODE: survival
DIFFICULITY: normal
volumes:
- "/data/worlds"
- "/data/server.properties"
docker compose up -d
でサーバ開始し、手元のAndroid版Minecraftから接続できることを確認。
このコンテナは定期的に公式サーバへアップデート要否を問い合わせて、必要に応じてアップデートしてくれるスグレモノ。楽に運用できそうです。
-
前の記事
【Android】リモートデスクトップで日本語入力ができない対処【小技】 2021.10.05
-
次の記事
記事がありません