如何在Docker中添加GDAL

Pap*_*nho 5 geodjango docker

我正在尝试设置Docker和geodjagno。当docker-compose up我有以下错误:

django.core.exceptions.ImproperlyConfigured: Could not find the GDAL library (tried "gdal", "GDAL", "gdal2.2.0", "gdal2.1.0", "gdal2.0.0", "gdal1.11.0", "gdal1.10.0", "gdal1.9.0"). Is GDAL installed? If it is, try setting GDAL_LIBRARY_PATH in your settings.
Run Code Online (Sandbox Code Playgroud)

GDAL是可以在此图像中找到的库 wooyek/geodjango

Docker文件

 FROM wooyek/geodjango
 ENV PYTHONUNBUFFERED 1
 RUN mkdir /code
 WORKDIR /code
 ADD requirements.txt /code/
 RUN pip install -r requirements.txt
 ADD . /code/
Run Code Online (Sandbox Code Playgroud)

码头工人组成

services:

  web:
    build: .
    container_name: web
    command: python3 manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    depends_on:
      - db

  db:
    image: mdillon/postgis
    #command: -e POSTGRES_USER=johndoe -e POSTGRES_PASSWORD=myfakedata -e POSTGRES_DB=myfakedata library/postgres
    environment:
      - POSTGRES_USER=johndoe
      - POSTGRES_PASSWORD=myfakedata
      - POSTGRES_DB=myfakedata
    ports:
      - "5435:5432"


  adminer:
    image: adminer
    restart: always
    ports:
      - 8080:8080
Run Code Online (Sandbox Code Playgroud)

小智 7

尝试在Dockerfile中添加以下内容:

RUN apt-get update &&\
    apt-get install -y binutils libproj-dev gdal-bin
Run Code Online (Sandbox Code Playgroud)

  • 对我来说安装 `gdal-bin` 就足够了。不管怎么说,还是要谢谢你! (2认同)
  • 如果使用“FROM python:3.8.0-alpine”图像怎么办? (2认同)