Dockerでマインクラフトのサーバーを建てる

いろいろ投げやり

FROM debian:latest
#SETUP
RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections
# update repos
RUN echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee /etc/apt/sources.list.d/webupd8team-java.list
RUN echo "deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu trusty main" | tee -a /etc/apt/sources.list.d/webupd8team-java.list
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
RUN apt-get update
# install java
RUN apt-get install oracle-java8-installer -y
RUN apt-get clean
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
#MINECRAFT
RUN mkdir -p /home/minecraft
WORKDIR /home/minecraft
ENTRYPOINT ["java"]
CMD ["-server", "-Xms1024M", "-Xmx2048M", "-XX:+UseConcMarkSweepGC", "-jar", "minecraft_server.jar", "nogui"]
view raw Dockerfile hosted with ❤ by GitHub

こんな感じでDockerfile書いて

docker build -t hoge/minecraft .
で終わり
適当にJavaに投げるオプションを適宜変更してビルドする

実行は

1docker run -d -p 25565:25565 -v /hoge/fuga:/home/minecraft hoge/minecraft

するだけ
ボリュームで置いたファイルを呼んでるだけの手抜きイメージを走らせてる 最高に手抜き
参考サイトみたいにした方がいいと思うけどとりあえずJava動くイメージが作ってみたかっただけなんだ…

とりあえずイメージの作り方の勉強にお試しでという感じ