docker: Add ARM docker container dockerfile. (#3574)

This commit is contained in:
Harshavardhana 2017-03-07 15:15:05 -08:00 committed by GitHub
parent a2eae54d11
commit 3e655a2c85
3 changed files with 49 additions and 11 deletions

View file

@ -1,6 +1,9 @@
go_import_path: github.com/minio/minio
sudo: required
services:
- docker
dist: trusty
language: go
@ -13,12 +16,28 @@ env:
- ARCH=i686
script:
# Refer https://blog.hypriot.com/post/setup-simple-ci-pipeline-for-arm-images/
# prepare qemu
- docker run --rm --privileged multiarch/qemu-user-static:register --reset
# build image
- docker build -t minio/minio:edge-armhf . -f Dockerfile.armhf
# test image
- docker run --rm minio/minio:edge-armhf version
## Run all the tests
- make
- make test GOFLAGS="-timeout 15m -race -v"
- make coverage
# push image
- >
if [ "$TRAVIS_BRANCH" == "master" ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then
docker login -u="$DOCKER_USER" -p="$DOCKER_PASS"
docker push minio/minio:edge-armhf
fi
after_success:
- bash <(curl -s https://codecov.io/bash)
go:
- 1.7.4
- 1.7.5

View file

@ -1,16 +1,17 @@
FROM golang:1.7-alpine
FROM alpine:3.5
WORKDIR /go/src/app
ENV GOPATH /go
ENV PATH $PATH:$GOPATH/bin
ENV CGO_ENABLED 0
COPY . /go/src/app
WORKDIR /go/src/github.com/minio/
RUN \
apk add --no-cache git && \
go-wrapper download && \
go-wrapper install -ldflags "$(go run buildscripts/gen-ldflags.go)" && \
mkdir -p /export/docker && \
rm -rf /go/pkg /go/src && \
apk del git
RUN \
apk add --no-cache --virtual .build-deps git go musl-dev ca-certificates && \
go get -v -d github.com/minio/minio && \
cd /go/src/github.com/minio/minio && \
go install -v -ldflags "$(go run buildscripts/gen-ldflags.go)" && \
rm -rf /go/pkg /go/src /usr/local/go && apk del .build-deps
EXPOSE 9000
ENTRYPOINT ["minio"]

18
Dockerfile.armhf Normal file
View file

@ -0,0 +1,18 @@
FROM resin/armhf-alpine:3.5
ENV GOPATH /go
ENV PATH $PATH:$GOPATH/bin
ENV CGO_ENABLED 0
WORKDIR /go/src/github.com/minio/
RUN \
apk add --no-cache --virtual .build-deps git go musl-dev ca-certificates && \
go get -v -d github.com/minio/minio && \
cd /go/src/github.com/minio/minio && \
go install -v -ldflags "$(go run buildscripts/gen-ldflags.go)" && \
rm -rf /go/pkg /go/src /usr/local/go && apk del .build-deps
EXPOSE 9000
ENTRYPOINT ["minio"]
VOLUME ["/export"]