无法运行指定版本的Docker PostGIS容器问题求助
解决kartoza PostGIS Docker镜像指定3.1版本构建失败的问题
1. 切换到对应版本的Git分支
kartoza的PostGIS镜像分支与版本强绑定,直接拉取对应3.1版本的分支代码:
- 全新克隆:
git clone --branch postgis-3.1 https://github.com/kartoza/docker-postgis.git - 已有仓库切换分支:
git checkout postgis-3.1
2. 修正构建命令的标签与参数问题
你之前的构建命令标签使用了未解析的变量,导致标签无效,同时确保参数正确传递:
正确构建命令:
docker build \ --build-arg POSTGRES_MAJOR_VERSION=13 \ --build-arg POSTGIS_MAJOR_VERSION=3 \ --build-arg POSTGIS_MINOR_VERSION=1 \ -t kartoza/postgis:13-3.1 .
3. 清理本地缓存避免残留影响
之前的构建缓存可能残留了最新版依赖,导致重复安装3.3:
- 删除错误镜像:
docker rmi kartoza/postgis:13-3.1(如果存在) - 清理构建缓存:
docker builder prune -af - 重新执行构建命令,确保从干净环境开始
4. 直接使用官方预构建镜像
如果自行构建仍有问题,直接拉取kartoza官方预构建的指定版本镜像:
docker pull kartoza/postgis:13.0-postgis-3.1
启动容器时直接使用该镜像即可,版本格式为{PostgreSQL版本}-postgis-{PostGIS版本}
内容的提问来源于stack exchange,提问作者EllieBevs
相关产品推荐
相关产品推荐

