从官方 PostGIS docker 镜像启动 PostGIS docker 容器,无需使用 Tiger 地理编码器

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

当您开始

PostGIS docker container
时:

$ docker run --name test -e POSTGRES_PASSWORD=password -d postgis/postgis:latest

它还安装了老虎地理编码器:

$ docker exec -it test psql -U postgres -c '\dt'
                   List of relations
  Schema  |           Name           | Type  |  Owner   
----------+--------------------------+-------+----------
 public   | spatial_ref_sys          | table | postgres
 tiger    | addr                     | table | postgres
 tiger    | addrfeat                 | table | postgres
 tiger    | bg                       | table | postgres
 tiger    | county                   | table | postgres
 tiger    | county_lookup            | table | postgres
 tiger    | countysub_lookup         | table | postgres
 tiger    | cousub                   | table | postgres
 tiger    | direction_lookup         | table | postgres
 tiger    | edges                    | table | postgres
 tiger    | faces                    | table | postgres
 tiger    | featnames                | table | postgres
 tiger    | geocode_settings         | table | postgres
 tiger    | geocode_settings_default | table | postgres
 tiger    | loader_lookuptables      | table | postgres
 tiger    | loader_platform          | table | postgres
 tiger    | loader_variables         | table | postgres
 tiger    | pagc_gaz                 | table | postgres
 tiger    | pagc_lex                 | table | postgres
 tiger    | pagc_rules               | table | postgres
 tiger    | place                    | table | postgres
 tiger    | place_lookup             | table | postgres
 tiger    | secondary_unit_lookup    | table | postgres
 tiger    | state                    | table | postgres
 tiger    | state_lookup             | table | postgres
 tiger    | street_type_lookup       | table | postgres
 tiger    | tabblock                 | table | postgres
 tiger    | tabblock20               | table | postgres
 tiger    | tract                    | table | postgres
 tiger    | zcta5                    | table | postgres
 tiger    | zip_lookup               | table | postgres
 tiger    | zip_lookup_all           | table | postgres
 tiger    | zip_lookup_base          | table | postgres
 tiger    | zip_state                | table | postgres
 tiger    | zip_state_loc            | table | postgres
 topology | layer                    | table | postgres
 topology | topology                 | table | postgres
(37 rows)

因为我不需要地理编码器,所以我目前正在安装一个额外的 SQL 脚本来实际删除它。

所以我想知道是否可以从其官方映像启动 PostGIS docker 容器,而无需实际安装 Tiger 地理编码器? (使用

docker
或 Compose 文件时)

postgresql docker docker-compose postgis
1个回答
0
投票

为了避免不必要的表,您可以创建一个自定义 Docker 映像,使用 SQL 脚本删除

tiger
架构,然后使用
docker-compose.yml
文件挂载 SQL 脚本,在容器启动后删除
tiger
架构。 所以基本上你需要运行一个脚本来在启动后删除架构。 您可以使用 SQL 脚本,例如:

DROP SCHEMA IF EXISTS tiger CASCADE;
DROP SCHEMA IF EXISTS topology CASCADE;

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