fix docker build in production.

Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
This commit is contained in:
Bo-Yi Wu 2016-05-04 15:32:51 +08:00
parent 25a152b533
commit c0e3a871d6
4 changed files with 9 additions and 8 deletions

View File

@ -31,7 +31,7 @@ html:
go tool cover -html=coverage.out go tool cover -html=coverage.out
docker_build: clean docker_build: clean
tar -zcvf build.tar.gz gorush.go gorush tar -zcvf build.tar.gz gorush.go gorush config storage Makefile glide.lock glide.yaml
docker build --rm -t $(BUILD_IMAGE) -f docker/Dockerfile.build . docker build --rm -t $(BUILD_IMAGE) -f docker/Dockerfile.build .
docker run --rm $(BUILD_IMAGE) > gorush.tar.gz docker run --rm $(BUILD_IMAGE) > gorush.tar.gz
docker build --rm -t $(PRODUCTION_IMAGE) -f docker/Dockerfile.dist . docker build --rm -t $(PRODUCTION_IMAGE) -f docker/Dockerfile.dist .

View File

@ -2,11 +2,12 @@ FROM golang:1.6-alpine
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com> MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>
RUN apk --update add git RUN apk --update add git make
RUN mkdir -p /tmp/build RUN go get github.com/Masterminds/glide && cd $GOPATH/src/github.com/Masterminds/glide && make install
Add build.tar.gz /tmp/build/ RUN mkdir -p $GOPATH/src/github.com/appleboy/gorush
WORKDIR /tmp/build Add build.tar.gz $GOPATH/src/github.com/appleboy/gorush/
RUN go get -v -d WORKDIR $GOPATH/src/github.com/appleboy/gorush
RUN make bundle
RUN GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -o bin/gorush gorush.go RUN GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -o bin/gorush gorush.go
CMD tar -C bin -czf - gorush CMD tar -C bin -czf - gorush

View File

@ -8,7 +8,7 @@ RUN apk update && apk upgrade \
RUN mkdir /app RUN mkdir /app
ADD gorush.tar.gz /app/ ADD gorush.tar.gz /app/
ADD config/config.yml /app/config ADD config/config.yml /app/config/
WORKDIR /app WORKDIR /app
ENTRYPOINT ["./gorush", "-c", "config/config.yml"] ENTRYPOINT ["./gorush", "-c", "config/config.yml"]
EXPOSE 8088 EXPOSE 8088

View File

@ -10,7 +10,7 @@ for GOOS in $OS; do
(test "$GOOS" = "windows") && EXE="gorush.exe" (test "$GOOS" = "windows") && EXE="gorush.exe"
echo "Build: ${GOOS}, Arch: ${GOARCH}, EXE: ${EXE}" echo "Build: ${GOOS}, Arch: ${GOARCH}, EXE: ${EXE}"
GOOS=$GOOS GOARCH=$GOARCH go build -ldflags="-w" -o bin/$GOOS/$GOARCH/${EXE} gorush.go; GOOS=$GOOS GOARCH=$GOARCH go build -ldflags="-s -w" -o bin/$GOOS/$GOARCH/${EXE} gorush.go;
tar -C bin/$GOOS/$GOARCH -czf bin/gorush-$VERSION-$GOOS-$GOARCH.tar.gz gorush tar -C bin/$GOOS/$GOARCH -czf bin/gorush-$VERSION-$GOOS-$GOARCH.tar.gz gorush
done done
done done