diff --git a/alpine/base/Makefile b/alpine/base/Makefile index 2933bb17a..1a24d26f4 100644 --- a/alpine/base/Makefile +++ b/alpine/base/Makefile @@ -1,26 +1,10 @@ -.PHONY: tag push +DIRS = alpine-base alpine-build-c alpine-build-go +.PHONY: clean dirs $(DIRS) -default: push +push: $(DIRS) -hash: - docker pull alpine:3.4 - tar cf - Dockerfile | docker build --no-cache -t mobylinux/alpine-base:build - - rm -f hash - docker run mobylinux/alpine-base:build sha1sum /lib/apk/db/installed | sed 's/ .*//' > hash - -push: hash - docker pull mobylinux/alpine-base:$(shell cat hash) || \ - (docker tag mobylinux/alpine-base:build mobylinux/alpine-base:latest && \ - docker tag mobylinux/alpine-base:build mobylinux/alpine-base:$(shell cat hash) && \ - docker push mobylinux/alpine-base:$(shell cat hash) && \ - docker push mobylinux/alpine-base:latest) - rm -f hash - -tag: hash - docker pull mobylinux/alpine-base:$(shell cat hash) || \ - (docker tag mobylinux/alpine-base:build mobylinux/alpine-base:latest && \ - docker tag mobylinux/alpine-base:build mobylinux/alpine-base:$(shell cat hash)) - rm -f hash +$(DIRS): + $(MAKE) -C $@ clean: rm -f hash diff --git a/alpine/base/Dockerfile b/alpine/base/alpine-base/Dockerfile similarity index 100% rename from alpine/base/Dockerfile rename to alpine/base/alpine-base/Dockerfile diff --git a/alpine/base/alpine-base/Makefile b/alpine/base/alpine-base/Makefile new file mode 100644 index 000000000..28a7a67e9 --- /dev/null +++ b/alpine/base/alpine-base/Makefile @@ -0,0 +1,32 @@ +.PHONY: tag push + +BASE=alpine:3.4 +IMAGE=alpine-base + +default: push + +hash: + docker pull $(BASE) + tar cf - Dockerfile | docker build --no-cache -t $(IMAGE):build - + docker run --rm $(IMAGE):build sha1sum /lib/apk/db/installed | sed 's/ .*//' > hash + +push: hash + docker pull mobylinux/$(IMAGE):$(shell cat hash) || \ + (docker tag $(IMAGE):build mobylinux/$(IMAGE):latest && \ + docker tag $(IMAGE):build mobylinux/$(IMAGE):$(shell cat hash) && \ + docker push mobylinux/$(IMAGE):$(shell cat hash) && \ + docker push mobylinux/$(IMAGE):latest) + docker rmi $(IMAGE):build + rm -f hash + +tag: hash + docker pull mobylinux/$(IMAGE):$(shell cat hash) || \ + (docker tag $(IMAGE):build mobylinux/$(IMAGE):latest && \ + docker tag $(IMAGE):build mobylinux/$(IMAGE):$(shell cat hash)) + docker rmi $(IMAGE):build + rm -f hash + +clean: + rm -f hash + +.DELETE_ON_ERROR: diff --git a/alpine/base/alpine-build-c/Dockerfile b/alpine/base/alpine-build-c/Dockerfile new file mode 100644 index 000000000..a56d943b5 --- /dev/null +++ b/alpine/base/alpine-build-c/Dockerfile @@ -0,0 +1,2 @@ +FROM alpine:3.4 +RUN apk update && apk upgrade && apk add build-base util-linux-dev linux-headers diff --git a/alpine/base/alpine-build-c/Makefile b/alpine/base/alpine-build-c/Makefile new file mode 100644 index 000000000..92f5cca6d --- /dev/null +++ b/alpine/base/alpine-build-c/Makefile @@ -0,0 +1,32 @@ +.PHONY: tag push + +BASE=alpine:3.4 +IMAGE=alpine-build-c + +default: push + +hash: + docker pull $(BASE) + tar cf - Dockerfile | docker build --no-cache -t $(IMAGE):build - + docker run --rm $(IMAGE):build sha1sum /lib/apk/db/installed | sed 's/ .*//' > hash + +push: hash + docker pull mobylinux/$(IMAGE):$(shell cat hash) || \ + (docker tag $(IMAGE):build mobylinux/$(IMAGE):latest && \ + docker tag $(IMAGE):build mobylinux/$(IMAGE):$(shell cat hash) && \ + docker push mobylinux/$(IMAGE):$(shell cat hash) && \ + docker push mobylinux/$(IMAGE):latest) + docker rmi $(IMAGE):build + rm -f hash + +tag: hash + docker pull mobylinux/$(IMAGE):$(shell cat hash) || \ + (docker tag $(IMAGE):build mobylinux/$(IMAGE):latest && \ + docker tag $(IMAGE):build mobylinux/$(IMAGE):$(shell cat hash)) + docker rmi $(IMAGE):build + rm -f hash + +clean: + rm -f hash + +.DELETE_ON_ERROR: diff --git a/alpine/base/alpine-build-go/Dockerfile b/alpine/base/alpine-build-go/Dockerfile new file mode 100644 index 000000000..641752a6d --- /dev/null +++ b/alpine/base/alpine-build-go/Dockerfile @@ -0,0 +1,2 @@ +FROM golang:1.7-alpine +RUN apk update && apk add build-base diff --git a/alpine/base/alpine-build-go/Makefile b/alpine/base/alpine-build-go/Makefile new file mode 100644 index 000000000..8cbf706e9 --- /dev/null +++ b/alpine/base/alpine-build-go/Makefile @@ -0,0 +1,32 @@ +.PHONY: tag push + +BASE=golang:1.7-alpine +IMAGE=alpine-build-go + +default: push + +hash: + docker pull $(BASE) + tar cf - Dockerfile | docker build --no-cache -t $(IMAGE):build - + docker run --rm $(IMAGE):build sha1sum /lib/apk/db/installed | sed 's/ .*//' > hash + +push: hash + docker pull mobylinux/$(IMAGE):$(shell cat hash) || \ + (docker tag $(IMAGE):build mobylinux/$(IMAGE):latest && \ + docker tag $(IMAGE):build mobylinux/$(IMAGE):$(shell cat hash) && \ + docker push mobylinux/$(IMAGE):$(shell cat hash) && \ + docker push mobylinux/$(IMAGE):latest) + docker rmi $(IMAGE):build + rm -f hash + +tag: hash + docker pull mobylinux/$(IMAGE):$(shell cat hash) || \ + (docker tag $(IMAGE):build mobylinux/$(IMAGE):latest && \ + docker tag $(IMAGE):build mobylinux/$(IMAGE):$(shell cat hash)) + docker rmi $(IMAGE):build + rm -f hash + +clean: + rm -f hash + +.DELETE_ON_ERROR: diff --git a/alpine/packages/9pmount-vsock/Dockerfile b/alpine/packages/9pmount-vsock/Dockerfile index 5e7cdb5fb..ae76d2d2d 100644 --- a/alpine/packages/9pmount-vsock/Dockerfile +++ b/alpine/packages/9pmount-vsock/Dockerfile @@ -1,6 +1,4 @@ -FROM alpine:3.4 - -RUN apk update && apk upgrade && apk add build-base util-linux-dev linux-headers +FROM mobylinux/alpine-build-c:1b53976210ba819823eda5b1d0d3ea337772e97b RUN mkdir -p /9pmount-vsock WORKDIR /9pmount-vsock diff --git a/alpine/packages/diagnostics/Dockerfile b/alpine/packages/diagnostics/Dockerfile index 5ac32706b..fba23da7f 100644 --- a/alpine/packages/diagnostics/Dockerfile +++ b/alpine/packages/diagnostics/Dockerfile @@ -1,6 +1,4 @@ -FROM golang:alpine - -RUN apk update && apk add build-base +FROM mobylinux/alpine-build-go:f87b7d1c1cdec779ed602bfa5eaaeb94896d612c RUN mkdir -p /go/src/diagnostics WORKDIR /go/src/diagnostics diff --git a/alpine/packages/hvtools/Dockerfile b/alpine/packages/hvtools/Dockerfile index e61ee83c0..b69f9963c 100644 --- a/alpine/packages/hvtools/Dockerfile +++ b/alpine/packages/hvtools/Dockerfile @@ -1,6 +1,4 @@ -FROM alpine:3.4 - -RUN apk update && apk upgrade && apk add build-base linux-headers +FROM mobylinux/alpine-build-c:1b53976210ba819823eda5b1d0d3ea337772e97b RUN mkdir -p /hvtools diff --git a/alpine/packages/nc-vsock/Dockerfile b/alpine/packages/nc-vsock/Dockerfile index 12fa67e5a..e6cedd3a9 100644 --- a/alpine/packages/nc-vsock/Dockerfile +++ b/alpine/packages/nc-vsock/Dockerfile @@ -1,6 +1,4 @@ -FROM alpine:3.4 - -RUN apk update && apk upgrade && apk add build-base util-linux-dev +FROM mobylinux/alpine-build-c:1b53976210ba819823eda5b1d0d3ea337772e97b RUN mkdir -p /nc-vsock WORKDIR /nc-vsock diff --git a/alpine/packages/proxy/Dockerfile b/alpine/packages/proxy/Dockerfile index e01dd419f..dd9d2aa82 100644 --- a/alpine/packages/proxy/Dockerfile +++ b/alpine/packages/proxy/Dockerfile @@ -1,6 +1,4 @@ -FROM golang:alpine - -RUN apk update && apk add build-base +FROM mobylinux/alpine-build-go:f87b7d1c1cdec779ed602bfa5eaaeb94896d612c RUN mkdir -p /go/src/proxy WORKDIR /go/src/proxy diff --git a/alpine/packages/tap-vsockd/Dockerfile b/alpine/packages/tap-vsockd/Dockerfile index fc588e8a5..4e5990dd0 100644 --- a/alpine/packages/tap-vsockd/Dockerfile +++ b/alpine/packages/tap-vsockd/Dockerfile @@ -1,6 +1,4 @@ -FROM alpine:3.4 - -RUN apk update && apk upgrade && apk add build-base util-linux-dev linux-headers +FROM mobylinux/alpine-build-c:1b53976210ba819823eda5b1d0d3ea337772e97b RUN mkdir -p /tap-vsockd WORKDIR /tap-vsockd diff --git a/alpine/packages/transfused/Dockerfile b/alpine/packages/transfused/Dockerfile index 51abb0166..1a9458ac4 100644 --- a/alpine/packages/transfused/Dockerfile +++ b/alpine/packages/transfused/Dockerfile @@ -1,6 +1,4 @@ -FROM alpine:3.4 - -RUN apk update && apk upgrade && apk add build-base +FROM mobylinux/alpine-build-c:1b53976210ba819823eda5b1d0d3ea337772e97b RUN mkdir -p /transfused WORKDIR /transfused diff --git a/alpine/packages/vsudd/Dockerfile b/alpine/packages/vsudd/Dockerfile index 55416addc..99a8af96f 100644 --- a/alpine/packages/vsudd/Dockerfile +++ b/alpine/packages/vsudd/Dockerfile @@ -1,6 +1,4 @@ -FROM golang:alpine - -RUN apk update && apk add build-base +FROM mobylinux/alpine-build-go:f87b7d1c1cdec779ed602bfa5eaaeb94896d612c RUN mkdir -p /go/src/vsudd WORKDIR /go/src/vsudd