1
0
Fork 0

Update Dockerfile

master
Ambrose Chua 2018-09-17 11:53:39 +08:00 committed by GitHub
parent 4af8ba33ca
commit cbf58d69e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 15 additions and 4 deletions

View File

@ -1,20 +1,31 @@
FROM golang:1.11-rc-alpine as build
RUN apk add --no-cache git=2.18.0-r0 ca-certificates
ARG version="3.5.2"
ARG databases="cassandra clickhouse cockroachdb crate mongodb mysql neo4j postgres ql redshift shell spanner sqlite3 stub testing"
RUN apk add --no-cache git ca-certificates
RUN wget -O /usr/local/bin/dep https://github.com/golang/dep/releases/download/v0.5.0/dep-linux-amd64 && chmod +x /usr/local/bin/dep
RUN go get -u -d github.com/golang-migrate/migrate/cli
RUN git clone https://github.com/golang-migrate/migrate -b "v${version}" $GOPATH/src/github.com/golang-migrate/migrate
WORKDIR $GOPATH/src/github.com/golang-migrate/migrate
RUN git checkout -b "v${version}"
WORKDIR $GOPATH/src/github.com/golang-migrate/migrate/cli
RUN dep ensure
RUN CGO_ENABLED=0 go build -ldflags "-s -w" -tags 'cassandra clickhouse cockroachdb crate mongodb mysql neo4j postgres ql redshift shell spanner sqlite3 stub testing' -o /migrate
RUN CGO_ENABLED=0 go build -ldflags "-s -w" -tags '${databases}' -o /migrate
FROM scratch
# labels
LABEL org.label-schema.vcs-url="https://github.com/productionwentdown/migrate"
LABEL org.label-schema.version=${version}
LABEL org.label-schema.schema-version="1.0"
WORKDIR /
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
COPY --from=build /migrate /migrate
COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
ENTRYPOINT ["/migrate"]