Try to improve image build process

This commit is contained in:
Jan-Lukas Else 2021-12-06 20:06:26 +01:00
parent c988700ad5
commit 82803bfef0
3 changed files with 42 additions and 26 deletions

View File

@ -3,29 +3,42 @@ name: default
type: docker type: docker
steps: steps:
- name: base - name: testdocker
image: plugins/docker image: docker:dind
settings: volumes:
username: nologin - name: dockersock
password: path: /var/run
commands:
- sleep 5 # give docker enough time to start
- docker ps -a
- name: build
image: docker:dind
volumes:
- name: dockersock
path: /var/run
environment:
DOCKER_PASSWORD:
from_secret: docker_password from_secret: docker_password
repo: rg.fr-par.scw.cloud/jlelse/goblog commands:
registry: rg.fr-par.scw.cloud/jlelse - echo $DOCKER_PASSWORD | docker login --username nologin --password-stdin rg.fr-par.scw.cloud/jlelse
tags: latest - DOCKER_BUILDKIT=1 docker build -f Dockerfile -t rg.fr-par.scw.cloud/jlelse/goblog:latest . --target base
mirror: https://mirror.gcr.io - DOCKER_BUILDKIT=1 docker build -f Dockerfile -t rg.fr-par.scw.cloud/jlelse/goblog:tools . --target tools
- name: tools - docker push --all-tags rg.fr-par.scw.cloud/jlelse/goblog
image: plugins/docker
settings: services:
username: nologin - name: docker
password: image: docker:dind
from_secret: docker_password privileged: true
repo: rg.fr-par.scw.cloud/jlelse/goblog volumes:
registry: rg.fr-par.scw.cloud/jlelse - name: dockersock
tags: tools path: /var/run
dockerfile: Dockerfile.Tools
volumes:
- name: dockersock
temp: {}
trigger: trigger:
branch: branch:
- master - master
event: event:
- push - push

View File

@ -1,4 +1,5 @@
FROM golang:1.17-alpine3.15 as build FROM golang:1.17-alpine3.15 as build
WORKDIR /app WORKDIR /app
RUN apk add --no-cache git gcc musl-dev RUN apk add --no-cache git gcc musl-dev
RUN apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main sqlite-dev RUN apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main sqlite-dev
@ -12,7 +13,8 @@ ADD dbmigrations/ /app/dbmigrations/
RUN go test -cover ./... RUN go test -cover ./...
RUN go build -ldflags '-w -s' -o GoBlog RUN go build -ldflags '-w -s' -o GoBlog
FROM alpine:3.15 FROM alpine:3.15 as base
WORKDIR /app WORKDIR /app
VOLUME /app/config VOLUME /app/config
VOLUME /app/data VOLUME /app/data
@ -24,4 +26,9 @@ HEALTHCHECK --interval=1m --timeout=10s CMD GoBlog healthcheck
RUN apk add --no-cache tzdata tor RUN apk add --no-cache tzdata tor
RUN apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main sqlite-dev RUN apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main sqlite-dev
COPY templates/ /app/templates/ COPY templates/ /app/templates/
COPY --from=build /app/GoBlog /bin/ COPY --from=build /app/GoBlog /bin/
FROM base as tools
RUN apk add --no-cache curl bash git
RUN apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main sqlite

View File

@ -1,4 +0,0 @@
FROM rg.fr-par.scw.cloud/jlelse/goblog:latest
RUN apk add --no-cache curl bash git
RUN apk add --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/main sqlite