]> source.dussan.org Git - gitea.git/commitdiff
Docker multi-arch base (#1985)
authorAntoine GIRARD <sapk@users.noreply.github.com>
Thu, 16 Nov 2017 13:16:40 +0000 (14:16 +0100)
committerLauris BH <lauris@nix.lv>
Thu, 16 Nov 2017 13:16:40 +0000 (15:16 +0200)
* Create docker/manifest/base.yml

serve as base for build docker image for most platform (386,amd64,arm,arm64)

* Add make task docker-multi-arch-push-manifest

To update references of a multi-arch image on docker registry.

* Use SED_INPLACE generic sed command

* Delete Dockerfile.aarch64

Delete Dockerfile.rpi

* Use gitea/gitea-base as base

and replace deprecated MAINTAINER by LABEL (https://docs.docker.com/engine/reference/builder/#maintainer-deprecated)

* Fix rebase

* Use sapk/gitea-base as base

* Split makefile for docker

* Fix version to v3.6

Could use in later version edge of alpine official library that support multi-arch for armhf.

* Remove sapk/gitea-base and use directly new official alpine multi-arch

Dockerfile
Dockerfile.aarch64 [deleted file]
Dockerfile.rpi [deleted file]
Makefile
docker/Makefile [new file with mode: 0644]

index 3db023ca3bac9c207bfd55fe9aa807a0b10a0b27..dba14d579432bc4ac0622de313cbedec673d3a31 100644 (file)
@@ -1,5 +1,4 @@
 FROM alpine:3.6
-
 LABEL maintainer="The Gitea Authors"
 
 EXPOSE 22 3000
diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64
deleted file mode 100644 (file)
index 5c6746d..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-FROM multiarch/alpine:aarch64-v3.6
-
-LABEL maintainer="The Gitea Authors"
-
-EXPOSE 22 3000
-
-RUN apk --no-cache add \
-    su-exec \
-    ca-certificates \
-    sqlite \
-    bash \
-    git \
-    linux-pam \
-    s6 \
-    curl \
-    openssh \
-    gettext \
-    tzdata
-RUN addgroup \
-    -S -g 1000 \
-    git && \
-  adduser \
-    -S -H -D \
-    -h /data/git \
-    -s /bin/bash \
-    -u 1000 \
-    -G git \
-    git && \
-  echo "git:$(dd if=/dev/urandom bs=24 count=1 status=none | base64)" | chpasswd
-
-ENV USER git
-ENV GITEA_CUSTOM /data/gitea
-
-COPY docker /
-COPY gitea /app/gitea/gitea
-
-ENV GODEBUG=netdns=go
-
-VOLUME ["/data"]
-
-ENTRYPOINT ["/usr/bin/entrypoint"]
-CMD ["/bin/s6-svscan", "/etc/s6"]
-
diff --git a/Dockerfile.rpi b/Dockerfile.rpi
deleted file mode 100644 (file)
index 17ff443..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-FROM multiarch/alpine:armhf-v3.6
-
-LABEL maintainer="The Gitea Authors"
-
-EXPOSE 22 3000
-
-RUN apk --no-cache add \
-    su-exec \
-    ca-certificates \
-    sqlite \
-    bash \
-    git \
-    linux-pam \
-    s6 \
-    curl \
-    openssh \
-    gettext \
-    tzdata
-RUN addgroup \
-    -S -g 1000 \
-    git && \
-  adduser \
-    -S -H -D \
-    -h /data/git \
-    -s /bin/bash \
-    -u 1000 \
-    -G git \
-    git && \
-  echo "git:$(dd if=/dev/urandom bs=24 count=1 status=none | base64)" | chpasswd
-
-ENV USER git
-ENV GITEA_CUSTOM /data/gitea
-ENV GODEBUG=netdns=go
-
-VOLUME ["/data"]
-
-ENTRYPOINT ["/usr/bin/entrypoint"]
-CMD ["/bin/s6-svscan", "/etc/s6"]
-
-COPY docker /
-COPY gitea /app/gitea/gitea
index 4485986ffd8ae3022595fffcdfe64258c90f99aa..878c5e90576e49e3b318653991e563493688e618 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -15,7 +15,6 @@ else
 endif
 
 BINDATA := modules/{options,public,templates}/bindata.go
-DOCKER_TAG := gitea/gitea:latest
 GOFILES := $(shell find . -name "*.go" -type f ! -path "./vendor/*" ! -path "*/bindata.go")
 GOFMT ?= gofmt -s
 
@@ -56,6 +55,8 @@ else
        endif
 endif
 
+include docker/Makefile
+
 .PHONY: all
 all: build
 
@@ -229,11 +230,6 @@ build: $(EXECUTABLE)
 $(EXECUTABLE): $(SOURCES)
        $(GO) build $(GOFLAGS) $(EXTRA_GOFLAGS) -tags '$(TAGS)' -ldflags '-s -w $(LDFLAGS)' -o $@
 
-.PHONY: docker
-docker:
-       docker run -ti --rm -v $(CURDIR):/srv/app/src/code.gitea.io/gitea -w /srv/app/src/code.gitea.io/gitea -e TAGS="bindata $(TAGS)" webhippie/golang:edge make clean generate build
-       docker build -t $(DOCKER_TAG) .
-
 .PHONY: release
 release: release-dirs release-windows release-linux release-darwin release-copy release-check
 
diff --git a/docker/Makefile b/docker/Makefile
new file mode 100644 (file)
index 0000000..08e0b43
--- /dev/null
@@ -0,0 +1,11 @@
+#Makefile related to docker
+
+DOCKER_IMAGE ?= gitea/gitea
+DOCKER_TAG ?= latest
+DOCKER_REF := $(DOCKER_IMAGE):$(DOCKER_TAG)
+
+
+.PHONY: docker
+docker:
+       docker run -ti --rm -v $(CURDIR):/srv/app/src/code.gitea.io/gitea -w /srv/app/src/code.gitea.io/gitea -e TAGS="bindata $(TAGS)" webhippie/golang:edge make clean generate build
+       docker build -t $(DOCKER_REF) .