2023-02-26 17:14:39 +00:00
|
|
|
# syntax=docker/dockerfile:1
|
2023-07-21 18:54:27 +01:00
|
|
|
FROM alpine:3.18
|
2023-02-12 20:59:55 +00:00
|
|
|
|
2023-02-26 17:14:39 +00:00
|
|
|
WORKDIR /tmp
|
2023-02-12 20:59:55 +00:00
|
|
|
|
2023-02-26 17:14:39 +00:00
|
|
|
RUN --mount=type=bind,source=.,target=/packages \
|
|
|
|
apk update --no-cache && apk add bash --no-cache \
|
2023-02-12 20:59:55 +00:00
|
|
|
&& addgroup -S -g {{ .FlowGID }} flow \
|
|
|
|
&& adduser -S -H -D -s /bin/bash -u {{ .GoToSocial.LinuxUID }} -G flow gts \
|
2023-02-26 17:14:39 +00:00
|
|
|
&& mkdir -p /flow/gts/config \
|
|
|
|
&& tar xzvf /packages/gotosocial_{{ .GoToSocial.Version }}_linux_amd64.tar.gz \
|
|
|
|
&& tar xzvf /packages/gotosocial_{{ .GoToSocial.Version }}_web-assets.tar.gz \
|
|
|
|
&& mv /tmp/gotosocial /usr/local/bin/gotosocial \
|
|
|
|
&& mv /tmp/web /flow/gts \
|
|
|
|
&& chown -R {{ .GoToSocial.LinuxUID }}:{{ .FlowGID }} /flow/gts \
|
|
|
|
&& rm -rf /tmp/*
|
2023-02-12 20:59:55 +00:00
|
|
|
|
2023-02-26 17:14:39 +00:00
|
|
|
COPY --chown={{ .GoToSocial.LinuxUID }}:{{ .GoToSocial.LinuxUID }} entrypoint.sh /usr/local/bin/entrypoint
|
2023-02-12 20:59:55 +00:00
|
|
|
COPY --chown={{ .GoToSocial.LinuxUID }}:{{ .GoToSocial.LinuxUID }} config.yaml /flow/gts/config/config.yaml
|
|
|
|
COPY --chown={{ .GoToSocial.LinuxUID }}:{{ .FlowGID }} traefik_gotosocial.yaml /flow/gts/tmp/traefik_gotosocial.yaml
|
|
|
|
|
2023-02-26 17:14:39 +00:00
|
|
|
RUN chmod a+x /usr/local/bin/entrypoint
|
2023-02-12 20:59:55 +00:00
|
|
|
|
|
|
|
USER {{ .GoToSocial.LinuxUID }}:{{ .FlowGID }}
|
|
|
|
|
2023-02-26 17:14:39 +00:00
|
|
|
ENTRYPOINT ["entrypoint"]
|