services/templates/gotosocial/Dockerfile.gotmpl
Dan Anglin b6fecdf23c
refactor(gts): update Dockerfile
- Copy files from the context from within the RUN directive since the
  context directory is mounted in the container.
- Finalise the WORKDIR to /flow/gts
2023-07-30 01:55:21 +01:00

26 lines
1,020 B
Docker

# syntax=docker/dockerfile:1
FROM alpine:3.18
WORKDIR /tmp
RUN --mount=type=bind,source=.,target=/packages \
apk update --no-cache && apk add bash --no-cache \
&& addgroup -S -g {{ .FlowGID }} flow \
&& adduser -S -H -D -s /bin/bash -u {{ .GoToSocial.LinuxUID }} -G flow gts \
&& 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 \
&& cp /packages/entrypoint.sh /usr/local/bin/entrypoint \
&& cp /packages/config.yaml /flow/gts/config/config.yaml \
&& cp /packages/assets/images/background.jpg /flow/gts/web/assets/background.jpg \
&& chown -R {{ .GoToSocial.LinuxUID }}:{{ .FlowGID }} /flow/gts \
&& chmod a+x /usr/local/bin/entrypoint \
&& rm -rf /tmp/*
USER {{ .GoToSocial.LinuxUID }}:{{ .FlowGID }}
WORKDIR /flow/gts
ENTRYPOINT ["entrypoint"]