diff --git a/Dockerfile.cgiserver b/Dockerfile.cgiserver index 1009ae4..35d61b1 100644 --- a/Dockerfile.cgiserver +++ b/Dockerfile.cgiserver @@ -1,13 +1,9 @@ -FROM debian:13-slim +FROM unixorn/moosefs-base ARG application_version LABEL maintainer="Joe Block " LABEL version=${application_version} -RUN apt update && \ - apt install -y apt-utils ca-certificates --no-install-recommends -RUN update-ca-certificates - RUN apt install -y moosefs-cgiserv LABEL description="moosefs-cgiserv image" diff --git a/Dockerfile.chunkserver b/Dockerfile.chunkserver index d2768a8..177c549 100644 --- a/Dockerfile.chunkserver +++ b/Dockerfile.chunkserver @@ -1,13 +1,9 @@ -FROM debian:13-slim +FROM unixorn/moosefs-base ARG application_version LABEL maintainer="Joe Block " LABEL version=${application_version} -RUN apt update && \ - apt install -y apt-utils ca-certificates --no-install-recommends -RUN update-ca-certificates - RUN apt install -y moosefs-chunkserver LABEL description="moosefs-chunkserver image" diff --git a/Dockerfile.cli b/Dockerfile.cli index 087bf17..f45b977 100644 --- a/Dockerfile.cli +++ b/Dockerfile.cli @@ -1,14 +1,10 @@ -FROM debian:13-slim +FROM unixorn/moosefs-base ARG application_version LABEL maintainer="Joe Block " LABEL description="moosefs-cli image" LABEL version=${application_version} -RUN apt update && \ - apt install -y apt-utils ca-certificates --no-install-recommends -RUN update-ca-certificates - RUN apt install -y moosefs-cli CMD ["bash", "-l"] diff --git a/Dockerfile.master b/Dockerfile.master index 67bfec0..2a5e409 100644 --- a/Dockerfile.master +++ b/Dockerfile.master @@ -1,13 +1,9 @@ -FROM debian:13-slim +FROM unixorn/moosefs-base ARG application_version LABEL maintainer="Joe Block " LABEL version=${application_version} -RUN apt update && \ - apt install -y apt-utils ca-certificates --no-install-recommends -RUN update-ca-certificates - RUN apt install -y moosefs-master LABEL description="moosefs-master image" diff --git a/Dockerfile.metalogger b/Dockerfile.metalogger index 42d714b..9c0ea01 100644 --- a/Dockerfile.metalogger +++ b/Dockerfile.metalogger @@ -1,13 +1,9 @@ -FROM debian:12-slim +FROM unixorn/moosefs-base ARG application_version LABEL maintainer="Joe Block " LABEL version=${application_version} -RUN apt-get update && \ - apt-get install -y apt-utils ca-certificates --no-install-recommends -RUN update-ca-certificates - RUN apt-get install -y moosefs-metalogger LABEL description="moosefs-metalogger image" diff --git a/Dockerfile.netdump b/Dockerfile.netdump index 2f9c367..aeca9aa 100644 --- a/Dockerfile.netdump +++ b/Dockerfile.netdump @@ -1,14 +1,10 @@ -FROM debian:12-slim +FROM unixorn/moosefs-base ARG application_version LABEL maintainer="Joe Block " LABEL description="moosefs-netdump image" LABEL version=${application_version} -RUN apt-get update && \ - apt-get install -y apt-utils ca-certificates --no-install-recommends -RUN update-ca-certificates - RUN apt-get install -y moosefs-netdump CMD ["bash", "-l"] diff --git a/Makefile b/Makefile index d4f19a2..323b907 100644 --- a/Makefile +++ b/Makefile @@ -17,21 +17,30 @@ help: @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' HUB_USER=unixorn -MOOSEFS_VERSION=3.117 +MOOSEFS_VERSION=4.57 PLATFORMS=linux/arm64,linux/amd64,linux/arm/v7 install_hooks: ## Install the git hooks poetry run pre-commit install -local_cgiserver: ## Makes a moosefs-cgiserver docker image for only the architecture we're running on. Does not push to dockerhub. - docker buildx build --pull --load -t ${HUB_USER}/moosefs-cgiserver -f Dockerfile.cgiserver . +local_base: ## Makes a moosefs-base docker image for only the architecture we're running on. Does not push to dockerhub. + docker buildx build --pull --load -t ${HUB_USER}/moosefs-base -f Dockerfile.base . + +multiarch_base: ## Makes a moosefs-base docker image. Does not push to dockerhub. + docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-base:$(MOOSEFS_VERSION) -f Dockerfile.base . + docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-base:latest -f Dockerfile.base . + docker pull ${HUB_USER}/moosefs-base:latest + +local_cgiserver: local_base ## Makes a moosefs-cgiserver docker image for only the architecture we're running on. Does not push to dockerhub. + docker buildx build --load -t ${HUB_USER}/moosefs-cgiserver -f Dockerfile.cgiserver . +# docker buildx build --pull --load -t ${HUB_USER}/moosefs-cgiserver -f Dockerfile.cgiserver . multiarch_cgiserver: ## Makes a moosefs-cgiserver multi-architecture docker image for linux/arm64, linux/amd64 and linux/arm/v7 and pushes it to dockerhub docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-cgiserver:$(MOOSEFS_VERSION) -f Dockerfile.cgiserver . docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-cgiserver:latest -f Dockerfile.cgiserver . docker pull ${HUB_USER}/moosefs-cgiserver:latest -local_chunkserver: ## Makes a moosefs-chunkserver docker image for only the architecture we're running on. Does not push to dockerhub. +local_chunkserver: local_base ## Makes a moosefs-chunkserver docker image for only the architecture we're running on. Does not push to dockerhub. docker buildx build --pull --load -t ${HUB_USER}/moosefs-chunkserver -f Dockerfile.chunkserver . multiarch_chunkserver: ## Makes a moosefs-chunkserver multi-architecture docker image for linux/arm64, linux/amd64 and linux/arm/v7 and pushes it to dockerhub @@ -39,7 +48,7 @@ multiarch_chunkserver: ## Makes a moosefs-chunkserver multi-architecture docker docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-chunkserver:latest -f Dockerfile.chunkserver . docker pull ${HUB_USER}/moosefs-chunkserver:latest -local_cli: ## Makes a moosefs-cli docker image for only the architecture we're running on. Does not push to dockerhub. +local_cli: local_base ## Makes a moosefs-cli docker image for only the architecture we're running on. Does not push to dockerhub. docker buildx build --pull --load -t ${HUB_USER}/moosefs-cli -f Dockerfile.cli . multiarch_cli: ## Makes a moosefs-cli multi-architecture docker image for linux/arm64, linux/amd64 and linux/arm/v7 and pushes it to dockerhub @@ -47,7 +56,7 @@ multiarch_cli: ## Makes a moosefs-cli multi-architecture docker image for linux/ docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-cli:latest -f Dockerfile.cli . docker pull ${HUB_USER}/moosefs-cli:latest -local_master: ## Makes a moosefs-master docker image for only the architecture we're running on. Does not push to dockerhub. +local_master: local_base ## Makes a moosefs-master docker image for only the architecture we're running on. Does not push to dockerhub. docker buildx build --pull --load -t ${HUB_USER}/moosefs-master -f Dockerfile.master . multiarch_master: ## Makes a moosefs-master multi-architecture docker image for linux/arm64, linux/amd64 and linux/arm/v7 and pushes it to dockerhub @@ -55,7 +64,7 @@ multiarch_master: ## Makes a moosefs-master multi-architecture docker image for docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-master:latest -f Dockerfile.master . docker pull ${HUB_USER}/moosefs-master:latest -local_metalogger: ## Makes a moosefs-metalogger docker image for only the architecture we're running on. Does not push to dockerhub. +local_metalogger: local_base ## Makes a moosefs-metalogger docker image for only the architecture we're running on. Does not push to dockerhub. docker buildx build --pull --load -t ${HUB_USER}/moosefs-metalogger -f Dockerfile.metalogger . multiarch_metalogger: ## Makes a moosefs-metalogger multi-architecture docker image for linux/arm64, linux/amd64 and linux/arm/v7 and pushes it to dockerhub @@ -63,7 +72,7 @@ multiarch_metalogger: ## Makes a moosefs-metalogger multi-architecture docker im docker buildx build --build-arg application_version=${MOOSEFS_VERSION} --platform ${PLATFORMS} --pull --push -t ${HUB_USER}/moosefs-metalogger:latest -f Dockerfile.metalogger . docker pull ${HUB_USER}/moosefs-metalogger:latest -local_netdump: ## Makes a moosefs-netdump docker image for only the architecture we're running on. Does not push to dockerhub. +local_netdump: local_base ## Makes a moosefs-netdump docker image for only the architecture we're running on. Does not push to dockerhub. docker buildx build --pull --load -t ${HUB_USER}/moosefs-netdump -f Dockerfile.netdump . multiarch_netdump: ## Makes a moosefs-netdump multi-architecture docker image for linux/arm64, linux/amd64 and linux/arm/v7 and pushes it to dockerhub @@ -72,7 +81,7 @@ multiarch_netdump: ## Makes a moosefs-netdump multi-architecture docker image fo docker pull ${HUB_USER}/moosefs-netdump:latest local: local_all ## Make images for whatever architecture you're running on, but does not push to docker hub -local_all: local_cgiserver local_chunkserver local_cli local_master local_metalogger local_netdump +local_all: local_cgiserver local_chunkserver local_cli local_master local_metalogger local_netdump local_base multiarch_images: multiarch ## Builds multi-architecture docker images for all the services and pushes them to docker hub multiarch: multiarch_cgiserver \