support arm64 and arm docker image. (#277)
* support arm64 and arm docker image. Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com> * fix format. Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
This commit is contained in:
parent
35e2c97f43
commit
a466827822
70
.drone.yml
70
.drone.yml
|
@ -37,6 +37,18 @@ pipeline:
|
||||||
commands:
|
commands:
|
||||||
- make docker_build
|
- make docker_build
|
||||||
|
|
||||||
|
arm64:
|
||||||
|
image: appleboy/golang-testing
|
||||||
|
group: golang
|
||||||
|
commands:
|
||||||
|
- make docker_build_arm64
|
||||||
|
|
||||||
|
arm:
|
||||||
|
image: appleboy/golang-testing
|
||||||
|
group: golang
|
||||||
|
commands:
|
||||||
|
- make docker_build_arm
|
||||||
|
|
||||||
coverage:
|
coverage:
|
||||||
image: appleboy/golang-testing
|
image: appleboy/golang-testing
|
||||||
group: golang
|
group: golang
|
||||||
|
@ -65,9 +77,9 @@ pipeline:
|
||||||
event: [ tag ]
|
event: [ tag ]
|
||||||
branch: [ refs/tags/* ]
|
branch: [ refs/tags/* ]
|
||||||
|
|
||||||
publish_latest:
|
publish_linux_amd64:
|
||||||
image: plugins/docker
|
image: plugins/docker
|
||||||
pull: true
|
group: publish
|
||||||
repo: ${DRONE_REPO}
|
repo: ${DRONE_REPO}
|
||||||
tags: [ 'latest' ]
|
tags: [ 'latest' ]
|
||||||
secrets: [ docker_username, docker_password ]
|
secrets: [ docker_username, docker_password ]
|
||||||
|
@ -76,9 +88,33 @@ pipeline:
|
||||||
branch: [ master ]
|
branch: [ master ]
|
||||||
local: false
|
local: false
|
||||||
|
|
||||||
publish_tag:
|
publish_linux_armhf:
|
||||||
image: plugins/docker
|
image: plugins/docker
|
||||||
pull: true
|
group: publish
|
||||||
|
repo: ${DRONE_REPO}
|
||||||
|
tags: [ 'linux-arm' ]
|
||||||
|
dockerfile: Dockerfile.armhf
|
||||||
|
secrets: [ docker_username, docker_password ]
|
||||||
|
when:
|
||||||
|
event: [ push ]
|
||||||
|
branch: [ master ]
|
||||||
|
local: false
|
||||||
|
|
||||||
|
publish_linux_aarch64:
|
||||||
|
image: plugins/docker
|
||||||
|
group: publish
|
||||||
|
repo: ${DRONE_REPO}
|
||||||
|
tags: [ 'linux-arm64' ]
|
||||||
|
dockerfile: Dockerfile.aarch64
|
||||||
|
secrets: [ docker_username, docker_password ]
|
||||||
|
when:
|
||||||
|
event: [ push ]
|
||||||
|
branch: [ master ]
|
||||||
|
local: false
|
||||||
|
|
||||||
|
publish_tag_linux_amd64:
|
||||||
|
image: plugins/docker
|
||||||
|
group: tag
|
||||||
repo: ${DRONE_REPO}
|
repo: ${DRONE_REPO}
|
||||||
tags: [ '${DRONE_TAG}' ]
|
tags: [ '${DRONE_TAG}' ]
|
||||||
secrets: [ docker_username, docker_password ]
|
secrets: [ docker_username, docker_password ]
|
||||||
|
@ -88,6 +124,32 @@ pipeline:
|
||||||
branch: [ refs/tags/* ]
|
branch: [ refs/tags/* ]
|
||||||
local: false
|
local: false
|
||||||
|
|
||||||
|
publish_tag_linux_armhf:
|
||||||
|
image: plugins/docker
|
||||||
|
group: tag
|
||||||
|
repo: ${DRONE_REPO}
|
||||||
|
tags: [ '${DRONE_TAG}-linux-arm' ]
|
||||||
|
dockerfile: Dockerfile.armhf
|
||||||
|
secrets: [ docker_username, docker_password ]
|
||||||
|
group: release
|
||||||
|
when:
|
||||||
|
event: [ tag ]
|
||||||
|
branch: [ refs/tags/* ]
|
||||||
|
local: false
|
||||||
|
|
||||||
|
publish_tag_linux_aarch64:
|
||||||
|
image: plugins/docker
|
||||||
|
group: tag
|
||||||
|
repo: ${DRONE_REPO}
|
||||||
|
tags: [ '${DRONE_TAG}-linux-arm64' ]
|
||||||
|
dockerfile: Dockerfile.aarch64
|
||||||
|
secrets: [ docker_username, docker_password ]
|
||||||
|
group: release
|
||||||
|
when:
|
||||||
|
event: [ tag ]
|
||||||
|
branch: [ refs/tags/* ]
|
||||||
|
local: false
|
||||||
|
|
||||||
release_tag:
|
release_tag:
|
||||||
image: plugins/github-release
|
image: plugins/github-release
|
||||||
secrets: [ github_release_api_key ]
|
secrets: [ github_release_api_key ]
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
FROM centurylink/ca-certs
|
||||||
|
ENV GODEBUG=netdns=go
|
||||||
|
|
||||||
|
EXPOSE 8088
|
||||||
|
|
||||||
|
ADD config/config.yml /
|
||||||
|
ADD bin/gorush-arm64 /gorush
|
||||||
|
|
||||||
|
ENTRYPOINT ["/gorush"]
|
||||||
|
CMD ["-c", "config.yml"]
|
|
@ -0,0 +1,10 @@
|
||||||
|
FROM centurylink/ca-certs
|
||||||
|
ENV GODEBUG=netdns=go
|
||||||
|
|
||||||
|
EXPOSE 8088
|
||||||
|
|
||||||
|
ADD config/config.yml /
|
||||||
|
ADD bin/gorush-arm /gorush
|
||||||
|
|
||||||
|
ENTRYPOINT ["/gorush"]
|
||||||
|
CMD ["-c", "config.yml"]
|
5
Makefile
5
Makefile
|
@ -165,6 +165,11 @@ release-check:
|
||||||
docker_build:
|
docker_build:
|
||||||
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 $(GO) build -a -tags '$(TAGS)' -ldflags "$(EXTLDFLAGS)-s -w $(LDFLAGS)" -o bin/$(EXECUTABLE)
|
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 $(GO) build -a -tags '$(TAGS)' -ldflags "$(EXTLDFLAGS)-s -w $(LDFLAGS)" -o bin/$(EXECUTABLE)
|
||||||
|
|
||||||
|
docker_build_arm64:
|
||||||
|
CGO_ENABLED=0 GOOS=linux GOARCH=arm64 $(GO) build -a -tags '$(TAGS)' -ldflags "$(EXTLDFLAGS)-s -w $(LDFLAGS)" -o bin/$(EXECUTABLE)-arm64
|
||||||
|
docker_build_arm:
|
||||||
|
CGO_ENABLED=0 GOOS=linux GOARCH=arm GOARM=7 $(GO) build -a -tags '$(TAGS)' -ldflags "$(EXTLDFLAGS)-s -w $(LDFLAGS)" -o bin/$(EXECUTABLE)-arm
|
||||||
|
|
||||||
docker_image:
|
docker_image:
|
||||||
docker build -t $(DEPLOY_ACCOUNT)/$(DEPLOY_IMAGE) -f Dockerfile .
|
docker build -t $(DEPLOY_ACCOUNT)/$(DEPLOY_IMAGE) -f Dockerfile .
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue