安装
pygeoapi很容易安装在许多环境中。无论您是用户、管理员还是开发人员,下面将根据您的需求提供多种方法来启动和运行pygeoapi。
需求和依赖性
pygeoapi运行在python3上。
核心依赖项包含在给定的pygeoapi安装过程中。根据平台的不同,下面将描述更具体的需求细节。
对于开发者和确实不耐烦的人
python3 -m venv pygeoapi
cd pygeoapi
. bin/activate
git clone https://github.com/geopython/pygeoapi.git
cd pygeoapi
pip3 install --upgrade pip
pip3 install -r requirements.txt
python3 setup.py install
cp pygeoapi-config.yml example-config.yml
vi example-config.yml # edit as required
export PYGEOAPI_CONFIG=example-config.yml
export PYGEOAPI_OPENAPI=example-openapi.yml
pygeoapi openapi generate $PYGEOAPI_CONFIG > $PYGEOAPI_OPENAPI
pygeoapi serve
curl http://localhost:5000
pip
pip3 install pygeoapi
Docker
使用DockerHub
docker pull geopython/pygeoapi:latest
使用GitHub容器注册表
docker pull ghcr.io/geopython/pygeoapi:latest
库伯
备注
如果使用的是PostgreSQL功能提供程序,建议将Nginx入口亲和模式设置为Persistent;请参见下面的入口示例。
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ${KUBE_NAMESPACE}
labels:
app: ${KUBE_NAMESPACE}
annotations:
nginx.ingress.kubernetes.io/affinity: "cookie"
nginx.ingress.kubernetes.io/session-cookie-name: ${KUBE_NAMESPACE}
nginx.ingress.kubernetes.io/session-cookie-expires: "172800"
nginx.ingress.kubernetes.io/session-cookie-max-age: "172800"
nginx.ingress.kubernetes.io/ssl-redirect: "false"
nginx.ingress.kubernetes.io/affinity-mode: persistent
nginx.ingress.kubernetes.io/session-cookie-hash: sha1
spec:
ingressClassName: nginx
rules:
- host: ${APP_HOSTNAME}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: ${KUBE_NAMESPACE}
port:
number: ${CONTAINER_PORT}
Conda
conda install -c conda-forge pygeoapi
UbuntuGIS
apt-get install python3-pygeoapi
FreeBSD
pkg install py-pygeoapi
总结
祝贺!无论您选择了上述哪种方法,您都已成功地将pygeoapi安装到您的系统中。