chm-titiler / Dockerfile
ignaciosms's picture
Serve docs locally via app.py static mount (Dockerfile)
c5f9766 verified
Raw
History Blame Contribute Delete
800 Bytes
FROM python:3.11-slim
# rasterio's bundled GDAL wheel needs libexpat at runtime (not in python:slim).
RUN apt-get update && apt-get install -y --no-install-recommends \
ca-certificates libexpat1 && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# app.py (static mount) + data/ (STAC catalog + MosaicJSON, served same-origin)
COPY app.py .
COPY data ./data
# GDAL /vsicurl tuning for cheap COG range reads over HTTPS.
ENV GDAL_DISABLE_READDIR_ON_OPEN=EMPTY_DIR \
GDAL_HTTP_MULTIRANGE=YES \
GDAL_HTTP_MERGE_CONSECUTIVE_RANGES=YES \
CPL_VSIL_CURL_ALLOWED_EXTENSIONS=.tif \
VSI_CACHE=TRUE \
GDAL_CACHEMAX=200 \
PORT=8000
EXPOSE 8000
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]