使用 miniconda3 和 geopandas 运行 python docker

问题描述 投票:0回答:2

我创建了一个 docker 来运行一个以数据输入作为参数的 python 脚本。 听起来很简单,我继续

(1) 创建库镜像

Dockerfile_libraries:

FROM continuumio/miniconda3
RUN conda config --add channels conda-forge && conda update -y conda \
&& conda install -y geopandas

docker build -t img1 -f Dockerfile_libraries .

(2) 添加代码和数据

Dockerfile_分析:

FROM img1 
RUN mkdir -p /home/
COPY /data/ /home/data/
COPY myScript.py /home/
ENTRYPOINT ["python", "/home/myScript.py", "/home/data/data1", "/home/data/data2"]

docker build -t img2 -f Dockerfile_analysis .

(3) 运行:

docker run img2

但是它说

ERROR 1: PROJ: proj_create_from_database: Open of /opt/conda/share/proj failed

我用 ctrl-c 停止它

python docker
2个回答
1
投票

我有同样的问题,我认为这个问题与这个问题有关。根据该帖子,该问题与在基础环境中使用 pyproj 有关。不幸的是,所提出的解决方案并不能很好地概括。


0
投票

我在没有任何 Docker 参与的情况下遇到了这个问题。相反,我在 Jupyter Lab 中使用 conda 环境以及其他一些 GIS 相关的包。拉斐尔链接的问题对已接受的答案有评论,为我解决了这个问题:

import os
os.environ['PROJ_LIB'] = '/path/to/env/share/proj'

如果您有兴趣,Julian_P 的回答更详细地描述了正在发生的事情。

© www.soinside.com 2019 - 2024. All rights reserved.