54 lines
1.5 KiB
Docker
54 lines
1.5 KiB
Docker
FROM debian:stretch-slim
|
|
|
|
ARG POSTGREST_VERSION
|
|
|
|
# Install libpq5
|
|
RUN apt-get -qq update && \
|
|
apt-get -qq install -y --no-install-recommends libpq5 && \
|
|
apt-get -qq clean && \
|
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
|
|
# Install postgrest
|
|
RUN BUILD_DEPS="curl ca-certificates xz-utils" && \
|
|
apt-get -qq update && \
|
|
apt-get -qq install -y --no-install-recommends $BUILD_DEPS && \
|
|
cd /tmp && \
|
|
curl -SLO https://github.com/PostgREST/postgrest/releases/download/${POSTGREST_VERSION}/postgrest-${POSTGREST_VERSION}-ubuntu.tar.xz && \
|
|
tar -xJvf postgrest-${POSTGREST_VERSION}-ubuntu.tar.xz && \
|
|
mv postgrest /usr/local/bin/postgrest && \
|
|
cd / && \
|
|
apt-get -qq purge --auto-remove -y $BUILD_DEPS && \
|
|
apt-get -qq clean && \
|
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
|
|
|
COPY postgrest.conf /etc/postgrest.conf
|
|
|
|
|
|
ENV PGRST_DB_URI= \
|
|
PGRST_DB_SCHEMA=public \
|
|
PGRST_DB_ANON_ROLE= \
|
|
PGRST_DB_POOL=100 \
|
|
PGRST_DB_EXTRA_SEARCH_PATH=public \
|
|
PGRST_SERVER_HOST=*4 \
|
|
PGRST_SERVER_PORT=3000 \
|
|
PGRST_SERVER_PROXY_URI= \
|
|
PGRST_JWT_SECRET= \
|
|
PGRST_SECRET_IS_BASE64=false \
|
|
PGRST_JWT_AUD= \
|
|
PGRST_MAX_ROWS= \
|
|
PGRST_PRE_REQUEST= \
|
|
PGRST_ROLE_CLAIM_KEY=".role" \
|
|
PGRST_ROOT_SPEC=
|
|
|
|
RUN groupadd -g 1000 postgrest && \
|
|
useradd -r -u 1000 -g postgrest postgrest && \
|
|
chown postgrest:postgrest /etc/postgrest.conf
|
|
|
|
USER 1000
|
|
|
|
# PostgREST reads /etc/postgrest.conf so map the configuration
|
|
# file in when you run this container
|
|
CMD exec postgrest /etc/postgrest.conf
|
|
|
|
EXPOSE 3000
|