diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..90ed71c --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +/.env +/.gitignore +/Docker* +/DOCS.md +/LICENSE +/logo.svg +/MAINTAINERS +/Makefile +/publish.sh +/README.md \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 742a656..b273cec 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,13 @@ +FROM golang:1.8-alpine as builder + +WORKDIR /go/src/drone-email +COPY . . + +RUN GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build + FROM alpine:3.4 RUN apk add --no-cache ca-certificates -ADD drone-email /bin/ +COPY --from=builder /go/src/drone-email/drone-email /bin/ ENTRYPOINT ["/bin/drone-email"] diff --git a/Makefile b/Makefile index 7f90167..183e2cb 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -all: test build publish +all: test build test: go vet @@ -6,7 +6,3 @@ test: build: GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build - docker build -t drillster/drone-email:latest . - -publish: - bash publish.sh \ No newline at end of file diff --git a/README.md b/README.md index ef4c204..bdcaa81 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ go build Build the docker image with the following commands: ``` -make build +docker build -t drillster/drone-email:latest . ``` This will create a Docker image called `drillster/drone-email:latest`. diff --git a/publish.sh b/publish.sh deleted file mode 100755 index 8fb53c2..0000000 --- a/publish.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -tags=$(git tag --points-at HEAD) -IFS=$'\n' read -rd '' -a taglist <<<"$tags" - -if [ ${#taglist[@]} -gt 0 ]; then - echo "Tagging Docker images with: ${taglist[@]}" - for tag in "${taglist[@]}"; do - docker tag drillster/drone-email:latest drillster/drone-email:$tag - done -fi - -echo "Pushing Docker images..." -docker push drillster/drone-email:latest - -if [ "$?" -ne "0" ]; then - echo "Failed to push image, exiting!" - exit 1 -fi - -if [ ${#taglist[@]} -gt 0 ]; then - for tag in "${taglist[@]}"; do - docker push drillster/drone-email:$tag - done -fi \ No newline at end of file