39 lines
1.3 KiB
Docker
39 lines
1.3 KiB
Docker
|
FROM python:3.8-slim
|
||
|
|
||
|
RUN set -eux && \
|
||
|
mkdir -p /srv/umap /etc/umap /srv/umap/data /srv/umap/uploads && \
|
||
|
useradd -N umap -d /srv/umap/ -s /bin/bash && \
|
||
|
chown -R umap:users /etc/umap /srv/umap && \
|
||
|
apt-get update && \
|
||
|
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
||
|
python3-virtualenv \
|
||
|
build-essential \
|
||
|
libpq-dev \
|
||
|
python3.9-dev \
|
||
|
gdal-bin \
|
||
|
uwsgi \
|
||
|
uwsgi-plugin-python3 \
|
||
|
&& \
|
||
|
su - umap -c "virtualenv /srv/umap/venv --python=/usr/bin/python3.9" && \
|
||
|
su - umap -c "source /srv/umap/venv/bin/activate; pip install umap-project django-environ==0.9.0 django-redis==4.7.0" && \
|
||
|
sed -i 's/ value="{{ q|default:"" }}"//' /srv/umap/venv/lib/python3.9/site-packages/umap/templates/umap/search_bar.html && \
|
||
|
apt-get purge -y build-essential libpq-dev python3.9-dev && \
|
||
|
apt-get autoremove --purge -y && \
|
||
|
rm -rf /var/lib/apt/lists/*
|
||
|
|
||
|
ADD umap.conf /etc/umap/umap.conf
|
||
|
ADD uwsgi.ini /srv/umap/uwsgi.ini
|
||
|
ADD drop-privileges.sh /srv/umap/drop-privileges.sh
|
||
|
ADD docker-entrypoint.sh /srv/umap/docker-entrypoint.sh
|
||
|
|
||
|
EXPOSE 8000/tcp
|
||
|
|
||
|
# Add Tini
|
||
|
ENV TINI_VERSION v0.14.0
|
||
|
ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /tini
|
||
|
RUN chmod +x /tini
|
||
|
|
||
|
ENTRYPOINT ["/tini", "--"]
|
||
|
|
||
|
CMD ["/srv/umap/docker-entrypoint.sh"]
|