services/templates/woodpecker/Dockerfile.gotmpl
Dan Anglin bcd67bc3f6
feat: add Work Flow to Flow Platform
- Deploy Work Flow (woodpecker) to the Flow Platform.
- Enable oauth2 in Code Flow.
2023-05-11 23:17:46 +01:00

28 lines
1.1 KiB
Docker

# syntax=docker/dockerfile:1
FROM alpine:3.17
WORKDIR /tmp
RUN --mount=type=bind,source=.,target=/packages \
apk update --no-cache && apk add --no-cache \
bash \
ca-certificates \
&& addgroup -g {{ .FlowGID }} flow \
&& adduser -S -H -D -s /bin/bash -u {{ .Woodpecker.LinuxUID }} -G flow workflow \
&& mkdir -p {{ .Woodpecker.DataContainerDirectory }} \
&& chown {{ .Woodpecker.LinuxUID }}:{{ .Woodpecker.LinuxUID }} {{ .Woodpecker.DataContainerDirectory }} \
&& chmod 0700 {{ .Woodpecker.DataContainerDirectory }} \
&& tar xzvf /packages/woodpecker-server-{{ .Woodpecker.Version }}_linux_amd64.tar.gz \
&& mv /tmp/woodpecker-server /usr/local/bin/woodpecker-server \
&& rm -rf /tmp/*
COPY --chown={{ .Woodpecker.LinuxUID }}:{{ .Woodpecker.LinuxUID }} entrypoint.sh /usr/local/bin/entrypoint
COPY --chown={{ .Woodpecker.LinuxUID }}:{{ .FlowGID }} traefik_woodpecker.yaml /flow/woodpecker/tmp/traefik_woodpecker.yaml
RUN chmod a+x /usr/local/bin/entrypoint
ENV GODEBUG=netdns=go
USER {{ .Woodpecker.LinuxUID }}:{{ .FlowGID }}
ENTRYPOINT ["entrypoint"]