diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..cfbaa81 --- /dev/null +++ b/Makefile @@ -0,0 +1,92 @@ +define docker_build_and_push + docker buildx build \ + --push \ + --platform linux/arm64,linux/amd64 \ + -t "schickling/$1" \ + ./$1 +endef + +help: + @awk 'BEGIN {FS = ":.*##"; printf "\nUsage:\n make \033[36m\033[0m\n\nTargets:\n"} /^[0-9a-zA-Z_-]+:.*?##/ { printf " \033[36m%-18s\033[0m %s\n", $$1, $$2 }' $(MAKEFILE_LIST) + +all: beanstalkd beanstalkd-console hugin jekyll latex mailcatcher mysql-backup-s3 nginx-envtpl nodejs octave opencv postgres-backup-s3 postgres-restore-s3 redis-commander rust s3cmd scala-sbt-docker swagger-ui thumbor-nginx-cors ## Build all images + +.PHONY: beanstalkd +beanstalkd: ## Build beanstalkd image + $(call docker_build_and_push,beanstalkd) + +.PHONY: beanstalkd-console +beanstalkd-console: ## Build beanstalkd-console image + $(call docker_build_and_push,beanstalkd-console) + +.PHONY: hugin +hugin: ## Build hugin image + $(call docker_build_and_push,hugin) + +.PHONY: jekyll # (This image is not compatible with arm architecture) +jekyll: ## Build jekyll image + docker buildx build \ + --push \ + --platform linux/amd64 \ + -t "schickling/$1" \ + ./$1 + +.PHONY: latex +latex: ## Build latex image + $(call docker_build_and_push,latex) + +.PHONY: mailcatcher +mailcatcher: ## Build mailcatcher image + $(call docker_build_and_push,mailcatcher) + +.PHONY: mysql-backup-s3 +mysql-backup-s3: ## Build mysql-backup-s3 image + $(call docker_build_and_push,mysql-backup-s3) + +.PHONY: nginx-envtpl +nginx-envtpl: ## Build nginx-envtpl image + $(call docker_build_and_push,nginx-envtpl) + +.PHONY: nodejs +nodejs: ## Build nodejs image + $(call docker_build_and_push,nodejs) + +.PHONY: octave +octave: ## Build octave image + $(call docker_build_and_push,octave) + +.PHONY: opencv +opencv: ## Build opencv image + $(call docker_build_and_push,opencv) + +.PHONY: postgres-backup-s3 +postgres-backup-s3: ## Build postgres-backup-s3 image + $(call docker_build_and_push,postgres-backup-s3) + +.PHONY: postgres-restore-s3 +postgres-restore-s3: ## Build postgres-restore-s3 image + $(call docker_build_and_push,postgres-restore-s3) + +.PHONY: redis-commander +redis-commander: ## Build redis-commander image + $(call docker_build_and_push,redis-commander) + +.PHONY: rust +rust: ## Build rust image + $(call docker_build_and_push,rust) + +.PHONY: s3cmd +s3cmd: ## Build s3cmd image + $(call docker_build_and_push,s3cmd) + +.PHONY: scala-sbt-docker +scala-sbt-docker: ## Build scala-sbt-docker image + $(call docker_build_and_push,scala-sbt-docker) + +.PHONY: swagger-ui +swagger-ui: ## Build swagger-ui image + $(call docker_build_and_push,swagger-ui) + +.PHONY: thumbor-nginx-cors +thumbor-nginx-cors: ## Build thumbor-nginx-cors image + $(call docker_build_and_push,thumbor-nginx-cors)