FROM alpine:3.19

# install packages
RUN apk add --no-cache tini shadow
RUN rm -fr /var/cache/apk/*

# setup main user
RUN adduser -D postgrest
RUN groupmod --gid 1000 postgrest
RUN usermod --uid 1000 postgrest

# install postgrest
COPY ./postgrest.tar.xz /tmp/postgrest.tar.xz
RUN tar xJf /tmp/postgrest.tar.xz -C /usr/local/bin
RUN rm /tmp/postgrest.tar.xz

# copy scripts
COPY ./entrypoint.sh /usr/local/bin/entrypoint.sh

# remove build packages
RUN apk del shadow

# make the dirs
RUN mkdir -p /etc/postgrest.d && \
	chown postgrest:postgrest /etc/postgrest.d

# do the
USER postgrest
ENTRYPOINT ["/sbin/tini", "--"]
CMD ["/usr/local/bin/entrypoint.sh"]