Create specific Dockerfiles for Minecraft setups
- Decompose Dockerfile into modular components - Establish building JRE and JDK images from Docker.java - Establish Dockerfile.vanilla for vanilla server setup - Establish Dockerfile.bukkit for Spigot and CraftBukkit - Establish a comprehensive Makefile for building and managing - Add docker-compose.build.yml for streamlined image construction - Use docker-compose.yml to test built images without a volume
This commit is contained in:
42
Makefile
42
Makefile
@@ -1,17 +1,35 @@
|
||||
CONTAINER = minecraft-minecraft-1
|
||||
DOCKER_COMPOSE_BUILD = docker compose -f docker-compose.build.yml build
|
||||
DOCKER_COMPOSE_UP = docker compose up -d
|
||||
|
||||
.PHONY: default build clean install
|
||||
default: build
|
||||
PRUNE_IMAGES = \
|
||||
localhost/minecraft:latest \
|
||||
localhost/minecraft:latest-spigot \
|
||||
localhost/minecraft:latest-craftbukkit \
|
||||
localhost/minecraft-jre:latest \
|
||||
localhost/minecraft-jdk:latest
|
||||
|
||||
build:
|
||||
docker compose build
|
||||
.PHONY: all clean craftbukkit default install jdk jre spigot vanilla
|
||||
default: vanilla
|
||||
all: vanilla spigot craftbukkit
|
||||
|
||||
jre:
|
||||
$(DOCKER_COMPOSE_BUILD) minecraft-jre
|
||||
|
||||
jdk:
|
||||
$(DOCKER_COMPOSE_BUILD) minecraft-jdk
|
||||
|
||||
vanilla: jre
|
||||
$(DOCKER_COMPOSE_BUILD) minecraft-vanilla
|
||||
|
||||
spigot: jre jdk
|
||||
$(DOCKER_COMPOSE_BUILD) minecraft-spigot
|
||||
|
||||
craftbukkit: jre jdk
|
||||
$(DOCKER_COMPOSE_BUILD) minecraft-craftbukkit
|
||||
|
||||
install:
|
||||
$(DOCKER_COMPOSE_UP)
|
||||
|
||||
clean:
|
||||
rm -f screenlog.0
|
||||
docker compose down --rmi all
|
||||
docker image rm $(PRUNE_IMAGES) || true
|
||||
docker builder prune -f
|
||||
|
||||
install: build
|
||||
touch screenlog.0
|
||||
docker compose up -d && \
|
||||
docker logs -f $(CONTAINER)
|
||||
|
Reference in New Issue
Block a user