Merge pull request #42 from appleboy/deploy
Fix #10 add deploy to docker hub.
This commit is contained in:
commit
b9fee33699
|
@ -25,8 +25,10 @@ _testmain.go
|
|||
|
||||
gin-bin
|
||||
key.pem
|
||||
config.yaml
|
||||
config.yml
|
||||
bin/*
|
||||
.DS_Store
|
||||
coverage.out
|
||||
gopush/log/*.log
|
||||
build.tar.gz
|
||||
gopush.tar.gz
|
||||
|
|
23
Makefile
23
Makefile
|
@ -3,8 +3,10 @@
|
|||
VERSION=0.0.1
|
||||
|
||||
DEPS := $(wildcard *.go)
|
||||
BUILD_IMAGE := "appleboy/gopush-build:latest"
|
||||
TEST_IMAGE := "appleboy/gopush-testing:latest"
|
||||
BUILD_IMAGE := "gopush-build"
|
||||
TEST_IMAGE := "gopush-testing"
|
||||
PRODUCTION_IMAGE := "gopush"
|
||||
DEPLOY_ACCOUNT := "appleboy"
|
||||
|
||||
all: build
|
||||
|
||||
|
@ -15,15 +17,22 @@ test:
|
|||
cd gopush && go test -v -covermode=count -coverprofile=coverage.out
|
||||
|
||||
docker_build: clean
|
||||
tar -zcvf build.tar.gz gopush.go gopush script
|
||||
tar -zcvf build.tar.gz gopush.go gopush
|
||||
docker build --rm -t $(BUILD_IMAGE) -f docker/Dockerfile.build .
|
||||
docker run --rm $(BUILD_IMAGE) > bin.tar.gz
|
||||
tar -zxvf bin.tar.gz
|
||||
-rm -rf bin.tar.gz build.tar.gz
|
||||
docker run --rm $(BUILD_IMAGE) > gopush.tar.gz
|
||||
docker build --rm -t $(PRODUCTION_IMAGE) -f docker/Dockerfile.dist .
|
||||
|
||||
docker_test:
|
||||
@docker build --rm -t $(TEST_IMAGE) -f docker/Dockerfile.testing .
|
||||
@docker run --rm -e ANDROID_TEST_TOKEN=$(ANDROID_TEST_TOKEN) -e ANDROID_API_KEY=$(ANDROID_API_KEY) $(TEST_IMAGE) sh -c "cd gopush && go test -v"
|
||||
|
||||
deploy:
|
||||
ifeq ($(tag),)
|
||||
@echo "Usage: make $@ tag=<tag>"
|
||||
@exit 1
|
||||
endif
|
||||
docker tag -f $(PRODUCTION_IMAGE):latest $(DEPLOY_ACCOUNT)/$(PRODUCTION_IMAGE):$(tag)
|
||||
docker push $(DEPLOY_ACCOUNT)/$(PRODUCTION_IMAGE):$(tag)
|
||||
|
||||
clean:
|
||||
rm -rf build.tar.gz bin.tar.gz bin/*
|
||||
-rm -rf build.tar.gz gopush.tar.gz bin/*
|
||||
|
|
17
README.md
17
README.md
|
@ -81,7 +81,7 @@ The default endpoint is APNs development. Please add `-production` flag for APNs
|
|||
$ gopush -ios -m="your message" -i="API Key" -t="Device token" -production
|
||||
```
|
||||
|
||||
### Run gopush with web server
|
||||
## Run gopush web server
|
||||
|
||||
Please make sure your [config.yml](config/config.yml) exist. Default port is `8088`.
|
||||
|
||||
|
@ -97,6 +97,21 @@ $ http -v --verify=no --json GET https://localhost:8088/api/status
|
|||
|
||||
![statue screenshot](screenshot/status.png)
|
||||
|
||||
## Run gopush in Docker
|
||||
|
||||
Set up `gopush` in the cloud in under 5 minutes with zero knowledge of Golang or Linux shell using our [gopush Docker image](https://hub.docker.com/r/appleboy/gopush/).
|
||||
|
||||
```bash
|
||||
$ docker pull appleboy/gopush
|
||||
$ docker run -name gopush -p 80:8088 appleboy/gopush
|
||||
```
|
||||
|
||||
Testing your gopush server.
|
||||
|
||||
```bash
|
||||
$ http -v --verify=no --json GET http://your.docker.host/api/status
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
Copyright 2016 Bo-Yi Wu [@appleboy](https://twitter.com/appleboy).
|
||||
|
|
|
@ -11,8 +11,8 @@ api:
|
|||
stat_go_uri: "/api/status"
|
||||
|
||||
android:
|
||||
enabled: false
|
||||
apikey: ""
|
||||
enabled: true
|
||||
apikey: "YOUR_API_KEY"
|
||||
|
||||
ios:
|
||||
enabled: false
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
FROM golang:1.6
|
||||
FROM golang:1.6-alpine
|
||||
|
||||
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>
|
||||
|
||||
RUN apk --update add git
|
||||
RUN mkdir -p /tmp/build
|
||||
Add build.tar.gz /tmp/build/
|
||||
WORKDIR /tmp/build
|
||||
RUN go get -v -d
|
||||
RUN sh script/build.sh
|
||||
RUN GOOS=linux GOARCH=amd64 go build -ldflags="-w" -o bin/gopush gopush.go
|
||||
|
||||
CMD tar -czf - bin
|
||||
CMD tar -C bin -czf - gopush
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
FROM alpine
|
||||
|
||||
MAINTAINER Bo-Yi Wu <appleboy.tw@gmail.com>
|
||||
|
||||
RUN apk update && apk upgrade \
|
||||
&& apk add ca-certificates \
|
||||
&& rm -rf /var/cache/apk/*
|
||||
|
||||
RUN mkdir /app
|
||||
ADD gopush.tar.gz /app/
|
||||
ADD config /app/config
|
||||
WORKDIR /app
|
||||
ENTRYPOINT ["./gopush", "-c", "config/config.yml"]
|
||||
EXPOSE 8088
|
Loading…
Reference in New Issue