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
|
gin-bin
|
||||||
key.pem
|
key.pem
|
||||||
config.yaml
|
config.yml
|
||||||
bin/*
|
bin/*
|
||||||
.DS_Store
|
.DS_Store
|
||||||
coverage.out
|
coverage.out
|
||||||
gopush/log/*.log
|
gopush/log/*.log
|
||||||
|
build.tar.gz
|
||||||
|
gopush.tar.gz
|
||||||
|
|
23
Makefile
23
Makefile
|
@ -3,8 +3,10 @@
|
||||||
VERSION=0.0.1
|
VERSION=0.0.1
|
||||||
|
|
||||||
DEPS := $(wildcard *.go)
|
DEPS := $(wildcard *.go)
|
||||||
BUILD_IMAGE := "appleboy/gopush-build:latest"
|
BUILD_IMAGE := "gopush-build"
|
||||||
TEST_IMAGE := "appleboy/gopush-testing:latest"
|
TEST_IMAGE := "gopush-testing"
|
||||||
|
PRODUCTION_IMAGE := "gopush"
|
||||||
|
DEPLOY_ACCOUNT := "appleboy"
|
||||||
|
|
||||||
all: build
|
all: build
|
||||||
|
|
||||||
|
@ -15,15 +17,22 @@ test:
|
||||||
cd gopush && go test -v -covermode=count -coverprofile=coverage.out
|
cd gopush && go test -v -covermode=count -coverprofile=coverage.out
|
||||||
|
|
||||||
docker_build: clean
|
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 build --rm -t $(BUILD_IMAGE) -f docker/Dockerfile.build .
|
||||||
docker run --rm $(BUILD_IMAGE) > bin.tar.gz
|
docker run --rm $(BUILD_IMAGE) > gopush.tar.gz
|
||||||
tar -zxvf bin.tar.gz
|
docker build --rm -t $(PRODUCTION_IMAGE) -f docker/Dockerfile.dist .
|
||||||
-rm -rf bin.tar.gz build.tar.gz
|
|
||||||
|
|
||||||
docker_test:
|
docker_test:
|
||||||
@docker build --rm -t $(TEST_IMAGE) -f docker/Dockerfile.testing .
|
@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"
|
@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:
|
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
|
$ 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`.
|
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)
|
![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
|
## License
|
||||||
|
|
||||||
Copyright 2016 Bo-Yi Wu [@appleboy](https://twitter.com/appleboy).
|
Copyright 2016 Bo-Yi Wu [@appleboy](https://twitter.com/appleboy).
|
||||||
|
|
|
@ -11,8 +11,8 @@ api:
|
||||||
stat_go_uri: "/api/status"
|
stat_go_uri: "/api/status"
|
||||||
|
|
||||||
android:
|
android:
|
||||||
enabled: false
|
enabled: true
|
||||||
apikey: ""
|
apikey: "YOUR_API_KEY"
|
||||||
|
|
||||||
ios:
|
ios:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
|
@ -1,11 +1,12 @@
|
||||||
FROM golang:1.6
|
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 mkdir -p /tmp/build
|
RUN mkdir -p /tmp/build
|
||||||
Add build.tar.gz /tmp/build/
|
Add build.tar.gz /tmp/build/
|
||||||
WORKDIR /tmp/build
|
WORKDIR /tmp/build
|
||||||
RUN go get -v -d
|
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