我正在设置一个django项目并尝试将docker与它一起使用。它可能使用postgis来依赖于gdal。

这是docker文件

FROM python:3

ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY . /code/
RUN pip install -r requirements.txt

和需求文件
Django==2.1.5
psycopg2==2.7.6.1
gdal==2.2.3

当达到gdal时会引发此错误
FileNotFoundError: [Errno 2] No such file or directory: 'gdal-config': 'gdal-config'

但是这是我已经在本地工作的东西
(pw) sam@sam-Lenovo-G51-35:~/code/pw$ gdal-config --version
2.2.3

我确实尝试通过将docker文件编辑到此来查看是否可以使用run来设置它gdal-config
FROM python:3

ENV PYTHONUNBUFFERED 1
RUN mkdir /code
RUN apt-get install libgdal-dev
RUN export CPLUS_INCLUDE_PATH=/usr/include/gdal
RUN export C_INCLUDE_PATH=/usr/include/gdal
WORKDIR /code
COPY . /code/
RUN pip install -r requirements.txt

基于最接近的匹配以找出可能解决方案的错误,但会引发此错误
Step 4/9 : RUN apt-get install libgdal-dev
---> Running in 8e5e71369e4a
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package libgdal-dev

最佳答案

您在运行apt-get update之前忘记了自己的Dockerfile中的apt-get install

考虑

Dockerfile

...
RUN apt-get update && apt-get install --yes libgdal-dev
...

关于django - docker为Django设置gdal,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54109110/

10-16 17:11