Added make targets to build and push docker images

Usage:
`make docker-image` to build the image
`make docker-image-push` to build and push the image

Signed-off-by: Mathias Kaufmann <me@stei.gr>
This commit is contained in:
Mathias Kaufmann 2018-03-14 00:10:00 +01:00
parent 36e84da7b5
commit eeb6782f0f
3 changed files with 18 additions and 3 deletions

View File

@ -2,9 +2,9 @@ FROM golang:1.10 AS goircd-builder
ARG PACKAGE=github.com/bbusse/goircd
ENV PACKAGE=$PACKAGE
WORKDIR /go/src/github.com/bbusse/goircd/
WORKDIR /go/src/$PACKAGE/
ADD . /go/src/github.com/bbusse/goircd/
ADD . /go/src/$PACKAGE/
RUN export CGO_ENABLED=0 \
&& go get $PACKAGE \

View File

@ -1,3 +1,4 @@
VERSION = $(shell git describe --tags)
PACKAGE ?= quay.io/goircd/goircd
include common.mk
include common.mk

View File

@ -2,3 +2,17 @@ LDFLAGS = -X main.version=$(VERSION)
goircd: *.go
go build -ldflags "$(LDFLAGS)"
docker-image: *.go Dockerfile .dockerignore
docker build -t $(shell basename $(PACKAGE)):$(VERSION) .
docker-image-push: docker-image-push-latest docker-image-push-version
@true
docker-image-push-version: docker-image-push-latest docker-image-push-version
docker tag $(shell basename $(PACKAGE)):$(VERSION) $(PACKAGE):$(VERSION)
docker push $(PACKAGE):$(VERSION)
docker-image-push-latest: docker-image
docker tag $(shell basename $(PACKAGE)):$(VERSION) $(PACKAGE):latest
docker push $(PACKAGE):latest