From 31a9e580a1a6bab2655555dd8de1f991d590f312 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Tue, 28 Sep 2021 17:56:36 +0200 Subject: [PATCH 01/10] log to stdout --- rootfs/etc/confd/templates/molly.conf.tmpl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/rootfs/etc/confd/templates/molly.conf.tmpl b/rootfs/etc/confd/templates/molly.conf.tmpl index fef5562..34f1cea 100644 --- a/rootfs/etc/confd/templates/molly.conf.tmpl +++ b/rootfs/etc/confd/templates/molly.conf.tmpl @@ -2,14 +2,14 @@ # Port = 1965 Hostname = "{{ getenv "HOST_NAME" }}" -CertPath = "/etc/molly-brown/keys/{{ getenv "HOST_NAME" }}-cert.pem" -KeyPath = "/etc/molly-brown/keys/{{ getenv "HOST_NAME" }}-key.pem" +CertPath = "/etc/molly-brown/keys/cert.pem" +KeyPath = "/etc/molly-brown/keys/key.pem" DocBase = "/var/gemini/" HomeDocBase = "users" GeminiExt = "gmi" DefaultLang = "{{ getenv "DEFAULT_LANG" "en" }}" -AccessLog = "/home/molly-brown/access.log" -ErrorLog = "/home/molly-brown/access.log" +AccessLog = "-" +ErrorLog = "-" ReadMollyFiles = true # From d217375670a74e97f3f37a2705ea098a9b18e5f8 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Tue, 15 Feb 2022 16:11:07 +0100 Subject: [PATCH 02/10] use new s6-rc layout --- .gitlab-ci.yml | 24 ++++++++++++------- Dockerfile | 2 +- rootfs/etc/fix-attrs.d/01-data | 1 - .../s6-rc.d/molly-brown/dependencies | 1 + .../s6-rc.d}/molly-brown/run | 0 .../etc/s6-overlay/s6-rc.d/molly-brown/type | 1 + .../s6-rc.d/user/contents.d/molly-brown | 0 7 files changed, 18 insertions(+), 11 deletions(-) delete mode 100644 rootfs/etc/fix-attrs.d/01-data create mode 100644 rootfs/etc/s6-overlay/s6-rc.d/molly-brown/dependencies rename rootfs/etc/{services.d => s6-overlay/s6-rc.d}/molly-brown/run (100%) create mode 100644 rootfs/etc/s6-overlay/s6-rc.d/molly-brown/type create mode 100644 rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/molly-brown diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ce8c70d..0f57a52 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,12 +1,18 @@ -stages: - - build - variables: - IMAGE_NAME: thallian/molly-brown - CI_BUILD_ARCHS: "linux/amd64,linux/arm64" + CONTAINER_NAME: thallian/molly-brown build: - stage: build - script: - - docker login -u $DOCKER_USER -p $DOCKER_PASSWORD $DOCKER_REGISTRY - - docker buildx build --platform "$CI_BUILD_ARCHS" --progress plain --pull --tag "$IMAGE_NAME:$CI_COMMIT_SHA" --tag "$IMAGE_NAME:$CI_COMMIT_REF_NAME" --tag "$IMAGE_NAME:latest" --push . + stage: build + image: + name: gcr.io/kaniko-project/executor:debug + entrypoint: [""] + script: + - mkdir -p /kaniko/.docker + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(printf "%s:%s" "$CI_REGISTRY_USER" "$CI_REGISTRY_PASSWORD" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json + - >- + /kaniko/executor + --context "$CI_PROJECT_DIR" + --dockerfile "$CI_PROJECT_DIR/Dockerfile" + --destination "$CONTAINER_NAME:$CI_COMMIT_SHA" + --destination "$CONTAINER_NAME:$CI_COMMIT_REF_NAME" + --destination "$CONTAINER_NAME:latest" diff --git a/Dockerfile b/Dockerfile index 66ddd49..28bc61e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.15.0-alpine3.12 AS builder +FROM golang:1.17.7-alpine3.15 AS builder ENV GO111MODULE=on diff --git a/rootfs/etc/fix-attrs.d/01-data b/rootfs/etc/fix-attrs.d/01-data deleted file mode 100644 index f3042ee..0000000 --- a/rootfs/etc/fix-attrs.d/01-data +++ /dev/null @@ -1 +0,0 @@ -/var/gemini/ true molly-brown:molly-brown 0666 0777 diff --git a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/dependencies b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/dependencies new file mode 100644 index 0000000..7ba7514 --- /dev/null +++ b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/dependencies @@ -0,0 +1 @@ +confd diff --git a/rootfs/etc/services.d/molly-brown/run b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run similarity index 100% rename from rootfs/etc/services.d/molly-brown/run rename to rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run diff --git a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/type b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/type new file mode 100644 index 0000000..5883cff --- /dev/null +++ b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/type @@ -0,0 +1 @@ +longrun diff --git a/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/molly-brown b/rootfs/etc/s6-overlay/s6-rc.d/user/contents.d/molly-brown new file mode 100644 index 0000000..e69de29 From f7e58f19429b3a6bd9ada3c54d52d45ac60ff7bd Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Tue, 15 Feb 2022 16:50:55 +0100 Subject: [PATCH 03/10] use new s6-rc layout --- rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run index dd4a94e..dfd2c6f 100644 --- a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run +++ b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run @@ -1,3 +1,3 @@ -#!/usr/bin/with-contenv sh +#!/bin/sh exec s6-setuidgid molly-brown molly-brown -c /etc/molly-brown/molly.conf From 8e738fe52c0a1e16a70a9c54c1631e21a69d1231 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Tue, 15 Feb 2022 16:57:00 +0100 Subject: [PATCH 04/10] move to new gitlab host --- rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run index dfd2c6f..3282583 100644 --- a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run +++ b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run @@ -1,3 +1,3 @@ #!/bin/sh -exec s6-setuidgid molly-brown molly-brown -c /etc/molly-brown/molly.conf +exec molly-brown -c /etc/molly-brown/molly.conf From a916765ae9c3f94aa466d832e06bd346bd26fae7 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Tue, 12 Jul 2022 19:45:00 +0200 Subject: [PATCH 05/10] use newer base image --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 28bc61e..6307313 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,11 @@ -FROM golang:1.17.7-alpine3.15 AS builder +FROM docker.io/golang:1.17.11-alpine3.16 AS builder ENV GO111MODULE=on ENV VERSION=48f9a206c03c0470e1c132b9667c6daa3583dada RUN go get tildegit.org/solderpunk/molly-brown@$VERSION -FROM thallian/confd-env:latest +FROM docker.io/thallian/confd-env:3.16 RUN addgroup -g 2222 molly-brown RUN adduser -h /home/molly-brown -S -D -u 2222 -G molly-brown molly-brown From b3c270d389589da7417f7febd5568d2cca121d57 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Fri, 11 Nov 2022 07:10:58 +0000 Subject: [PATCH 06/10] Delete '.gitlab-ci.yml' --- .gitlab-ci.yml | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 0f57a52..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,18 +0,0 @@ -variables: - CONTAINER_NAME: thallian/molly-brown - -build: - stage: build - image: - name: gcr.io/kaniko-project/executor:debug - entrypoint: [""] - script: - - mkdir -p /kaniko/.docker - - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(printf "%s:%s" "$CI_REGISTRY_USER" "$CI_REGISTRY_PASSWORD" | base64 | tr -d '\n')\"}}}" > /kaniko/.docker/config.json - - >- - /kaniko/executor - --context "$CI_PROJECT_DIR" - --dockerfile "$CI_PROJECT_DIR/Dockerfile" - --destination "$CONTAINER_NAME:$CI_COMMIT_SHA" - --destination "$CONTAINER_NAME:$CI_COMMIT_REF_NAME" - --destination "$CONTAINER_NAME:latest" From 225148bf9bc31e459dd8443fc523c2ea8152c8f4 Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Fri, 11 Nov 2022 07:11:31 +0000 Subject: [PATCH 07/10] Add '.woodpecker.yml' --- .woodpecker.yml | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 .woodpecker.yml diff --git a/.woodpecker.yml b/.woodpecker.yml new file mode 100644 index 0000000..3c6326f --- /dev/null +++ b/.woodpecker.yml @@ -0,0 +1,11 @@ +pipeline: + publish-docker-image: + image: plugins/kaniko + settings: + repo: docker.io/thallian/molly-brown + tags: latest,${CI_COMMIT_SHA:0:8},${CI_COMMIT_TAG=pre} + dockerfile: Dockerfile + username: + from_secret: DOCKER_USER + password: + from_secret: DOCKER_PW \ No newline at end of file From 42a4823c6a5e4afae3537b3c75a5ae33757904bb Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Wed, 23 Nov 2022 17:30:35 +0100 Subject: [PATCH 08/10] use alpine 3.17 --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 6307313..ba2d8c0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,7 +5,7 @@ ENV GO111MODULE=on ENV VERSION=48f9a206c03c0470e1c132b9667c6daa3583dada RUN go get tildegit.org/solderpunk/molly-brown@$VERSION -FROM docker.io/thallian/confd-env:3.16 +FROM docker.io/thallian/confd-env:3.17 RUN addgroup -g 2222 molly-brown RUN adduser -h /home/molly-brown -S -D -u 2222 -G molly-brown molly-brown From df5346edca0b6e23ebdd00b2c578f1e021c514af Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Sun, 31 Dec 2023 20:46:43 +0100 Subject: [PATCH 09/10] push to version 2068c3b0 --- .gitea/workflows/container.yaml | 12 ++++++++++++ .woodpecker.yml | 11 ----------- Dockerfile => Containerfile | 8 ++++---- 3 files changed, 16 insertions(+), 15 deletions(-) create mode 100644 .gitea/workflows/container.yaml delete mode 100644 .woodpecker.yml rename Dockerfile => Containerfile (69%) diff --git a/.gitea/workflows/container.yaml b/.gitea/workflows/container.yaml new file mode 100644 index 0000000..e48b3fd --- /dev/null +++ b/.gitea/workflows/container.yaml @@ -0,0 +1,12 @@ +name: Build Multiarch Container Image +on: [push] +jobs: + call-reusable-workflow: + uses: container/multiarch-build-workflow/.gitea/workflows/build.yaml@main + with: + repository: ${{ gitea.repository }} + ref_name: ${{ gitea.ref_name }} + sha: ${{ gitea.sha }} + registry_url: ${{ secrets.REGISTRY_URL }} + registry_user: ${{ secrets.REGISTRY_USER }} + registry_pw: ${{ secrets.REGISTRY_PW }} diff --git a/.woodpecker.yml b/.woodpecker.yml deleted file mode 100644 index 3c6326f..0000000 --- a/.woodpecker.yml +++ /dev/null @@ -1,11 +0,0 @@ -pipeline: - publish-docker-image: - image: plugins/kaniko - settings: - repo: docker.io/thallian/molly-brown - tags: latest,${CI_COMMIT_SHA:0:8},${CI_COMMIT_TAG=pre} - dockerfile: Dockerfile - username: - from_secret: DOCKER_USER - password: - from_secret: DOCKER_PW \ No newline at end of file diff --git a/Dockerfile b/Containerfile similarity index 69% rename from Dockerfile rename to Containerfile index ba2d8c0..ab749a6 100644 --- a/Dockerfile +++ b/Containerfile @@ -1,11 +1,11 @@ -FROM docker.io/golang:1.17.11-alpine3.16 AS builder +FROM docker.io/golang:1.21-alpine3.19 AS builder ENV GO111MODULE=on -ENV VERSION=48f9a206c03c0470e1c132b9667c6daa3583dada -RUN go get tildegit.org/solderpunk/molly-brown@$VERSION +ENV VERSION=2068c3b02abf8f6a9160d1891d16a5237ab77a1b +RUN go install tildegit.org/solderpunk/molly-brown@$VERSION -FROM docker.io/thallian/confd-env:3.17 +FROM docker.io/thallian/confd-env:3.19-3.1.6.2 RUN addgroup -g 2222 molly-brown RUN adduser -h /home/molly-brown -S -D -u 2222 -G molly-brown molly-brown From 269df6a0c2c4324666e2518136fd4fbfd61513ed Mon Sep 17 00:00:00 2001 From: Sebastian Hugentobler Date: Sun, 31 Dec 2023 22:33:20 +0100 Subject: [PATCH 10/10] use new logging config --- Containerfile | 2 -- rootfs/etc/confd/templates/molly.conf.tmpl | 2 +- rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Containerfile b/Containerfile index ab749a6..5bb5bce 100644 --- a/Containerfile +++ b/Containerfile @@ -14,8 +14,6 @@ RUN addgroup molly-brown tty RUN mkdir -p /var/gemini RUN chown molly-brown:molly-brown /var/gemini -RUN ln -sf /dev/stdout /home/molly-brown/access.log - RUN apk --no-cache add \ openssl \ coreutils diff --git a/rootfs/etc/confd/templates/molly.conf.tmpl b/rootfs/etc/confd/templates/molly.conf.tmpl index 34f1cea..32f686f 100644 --- a/rootfs/etc/confd/templates/molly.conf.tmpl +++ b/rootfs/etc/confd/templates/molly.conf.tmpl @@ -9,7 +9,7 @@ HomeDocBase = "users" GeminiExt = "gmi" DefaultLang = "{{ getenv "DEFAULT_LANG" "en" }}" AccessLog = "-" -ErrorLog = "-" +ErrorLog = "" ReadMollyFiles = true # diff --git a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run index 3282583..2980601 100644 --- a/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run +++ b/rootfs/etc/s6-overlay/s6-rc.d/molly-brown/run @@ -1,3 +1,3 @@ #!/bin/sh -exec molly-brown -c /etc/molly-brown/molly.conf +exec molly-brown -c /etc/molly-brown/molly.conf -u molly-brown