Files
dockerfiles/postgres/Dockerfile
T
Liu, Jianjun e6fdf7709f Minimize postgres container size using the os-core container
Convert postgres container to be based on the minimal os-core
container, using a multistage build technique to add additional
Clear Linux content.

Signed-off-by: Liu, Jianjun <jianjun.liu@intel.com>
2019-06-13 15:42:01 +08:00

37 lines
1.0 KiB
Docker

FROM clearlinux:latest AS builder
MAINTAINER william.douglas@intel.com
ARG swupd_args
# Move to latest Clear Linux release to ensure
# that the swupd command line arguments are
# correct
RUN swupd update --no-boot-update $swupd_args
# Grab os-release info from the minimal base image so
# that the new content matches the exact OS version
COPY --from=clearlinux/os-core:latest /usr/lib/os-release /
# Install additional content in a target directory
# using the os version from the minimal base
RUN source /os-release && \
mkdir /install_root \
&& swupd os-install -V ${VERSION_ID} \
--path /install_root --statedir /swupd-state \
--bundles=postgresql --no-scripts
FROM clearlinux/os-core:latest
COPY --from=builder /install_root /
ENV PGDATA /var/lib/pgsql/data
RUN mkdir -p /run/postgresql && chown -R postgres:postgres /run/postgresql
RUN mkdir -p "$PGDATA" && chown -R postgres:postgres "$PGDATA"
VOLUME /var/lib/pgsql/data
RUN mkdir -p /usr/local/bin
COPY bootstrap.sh /usr/local/bin
ENTRYPOINT ["bootstrap.sh"]
EXPOSE 5432
CMD ["postgres"]