Help us understand the problem. What is going on with this article?

DockerでMinecraftServerを建てる

More than 5 years have passed since last update.

Minecraftは1.7からライセンスをしっかりしてきて

購入者同士でもMinecraft(Mojangの成果物)の配布はだめだよ。となってますので

ONBUILDを使った方法でImageの配布をしてみました。

k2wanko/minecraft Repository | Docker Hub Registry

k2wanko/docker-minecraft Repository | Github

Dockerfileを作る

Dockerfile
FROM k2wanko/minecraft:1.8

と、一行のDockerfileを作成する。

作成する場所は 新規にディレクトリを作りその中に置いたほうがいいです。

※カレントディレクトリ全て追加されてしまうため

Build

Dockerfileのある場所に移動して以下のコマンドを入れる。

$ docker build -t minecraft .

log
Sending build context to Docker daemon 4.096 kB
Sending build context to Docker daemon
Step 0 : FROM k2wanko/minecraft:1.8
Pulling repository k2wanko/minecraft
...
# Executing 2 build triggers
Step onbuild-0 : RUN download 1.8
 ---> Running in 84728c402590
######################################################################## 100.0%
 ---> cc670f2d4714
Step onbuild-1 : COPY . /data
 ---> 53f7a68bb12b
 ---> 53f7a68bb12b
Removing intermediate container 84728c402590
Removing intermediate container 072ebb2ced5a
Successfully built 53f7a68bb12b

Run

以下のコマンドで実行。

 $ docker run -i -p 25565:25565 -e EULA=true minecraft

今の流れを一行にすると

mkdir mcserver && cd mcserver && echo "FROM k2wanko/minecraft:1.8" > Dockerfile && docker build -t minecraft . && docker run --name some-minecraft -i -p 25565:25565 -e "EULA=true" minecraft

まとめ

ONBUILDを使うことで
ONBUILDが記述されているDockerfileをFROMで呼び出した
Dockerfileの処理終了後に実行される。

今回MinecraftServerのDownload処理をこのOBUILDに書き込むことで配布用のImageにライセンスでダメェって言われている物を含めることをせずに済んだということでした。

ちなみに1.7.10のforge serverも入れてますのでModServerもすぐに立ち上げられますね。

koki_cheese
Go/JavaScript/Firebase/GCP/Securityとかが好きです。
http://github.com/k2wanko
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした