36 lines
1.2 KiB
Docker
36 lines
1.2 KiB
Docker
FROM python:3.10-slim-bullseye
|
|
|
|
ENV HOME=/home/app \
|
|
APP_HOME=/home/app/docker-postgres-backup \
|
|
\
|
|
# python
|
|
PYTHONPATH=${PYTHONPATH}:${PWD} \
|
|
PYTHONUNBUFFERED=1 \
|
|
PYTHONDONTWRITEBYTECODE=1 \
|
|
\
|
|
# pip
|
|
PIP_NO_CACHE_DIR=off \
|
|
PIP_DISABLE_PIP_VERSION_CHECK=on \
|
|
PIP_DEFAULT_TIMEOUT=100 \
|
|
\
|
|
# language locales
|
|
LANG=en_US.UTF-8 \
|
|
LANGUAGE=en_US:en \
|
|
LC_ALL=en_US.UTF-8
|
|
|
|
RUN apt-get update && apt-get install -y --no-install-recommends locales curl ca-certificates gnupg tini && \
|
|
curl https://www.postgresql.org/media/keys/ACCC4CF8.asc | gpg --dearmor | tee /etc/apt/trusted.gpg.d/apt.postgresql.org.gpg >/dev/null && \
|
|
sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt bullseye-pgdg main" > /etc/apt/sources.list.d/pgdg.list' && \
|
|
apt-get update && apt-get -y --no-install-recommends install postgresql-client-14 && \
|
|
apt-get -y --purge autoremove && apt-get clean && rm -rf /var/cache/apt && \
|
|
sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen && pip install -U pip
|
|
|
|
COPY ./ $APP_HOME
|
|
WORKDIR $APP_HOME
|
|
|
|
RUN python -m pip install $APP_HOME
|
|
|
|
ENTRYPOINT ["tini", "--"]
|
|
|
|
CMD ["python", "start.py"]
|