簡體   English   中英

如何在 Docker Python 映像中安裝 GDAL 庫?

[英]How to install GDAL Library in Docker Python image?

我正在為我的 django 項目使用 python3.7-slim-buster docker 圖像。 現在我想使用 django 的地理特征。 但看來我必須安裝GDAL。 所以,我運行 apt-get install gdal 並引發異常“E:無法找到 package gdal-bin”。 這是我的 docker 文件:


FROM python:3.7-slim-buster

ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
# DB vars
ENV DB_USER_NAME ${DB_USER_NAME}
ENV DB_NAME ${DB_NAME}
ENV DB_HOST ${DB_HOST}
ENV DB_PORT ${DB_PORT}
ENV DB_PASSWORD ${DB_PASSWORD}

ENV DJANGO_SECRET_KEY ${DJANGO_SECRET_KEY}

RUN apt-get install -y gdal-bin python-gdal python3-gdal

RUN ["adduser", "${USER_NAME}", "--disabled-password", "--ingroup", "www-data", "--quiet"]

USER ${USER_NAME}

ADD ${PROJECT_NAME}/ /home/${USER_NAME}/${PROJECT_NAME}
WORKDIR /home/${USER_NAME}/${PROJECT_NAME}

ENV PATH="/home/${USER_NAME}/.local/bin:\${PATH}:/usr/local/python3/bin"

RUN pip install --user -r requirements.txt

CMD python manage.py runserver 0.0.0.0:9000
#CMD gunicorn ${PROJECT_NAME}.wsgi:application --bind 0.0.0.0:8000
EXPOSE 8000

您需要執行以下操作:

RUN apt-get update
RUN apt-get install -y software-properties-common && apt-get update
RUN apt-get install -y python3.7-dev
RUN  add-apt-repository ppa:ubuntugis/ppa &&  apt-get update
RUN apt-get install -y gdal-bin libgdal-dev
ARG CPLUS_INCLUDE_PATH=/usr/include/gdal
ARG C_INCLUDE_PATH=/usr/include/gdal
RUN pip install GDAL

那是因為您的圖像沒有包含 gdal-bin package 的存儲庫。 因此,您必須添加存儲庫(您可以在此處查看指南)並安裝它:

RUN add-apt-repository ppa:ubuntugis/ppa && apt-get update && apt-get install -y gdal-bin python-gdal python3-gdal

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM