kopia lustrzana https://github.com/kartoza/docker-osm
Change postgresql version from 9.6 to 11
rodzic
58704d0d41
commit
601105f3dc
|
@ -9,7 +9,7 @@ volumes:
|
||||||
services:
|
services:
|
||||||
db:
|
db:
|
||||||
# About the postgresql version, it should match in the dockerfile of docker-imposm3
|
# About the postgresql version, it should match in the dockerfile of docker-imposm3
|
||||||
image: kartoza/postgis:9.6-2.4
|
image: kartoza/postgis:11.0-2.5
|
||||||
hostname: db
|
hostname: db
|
||||||
container_name: dockerosm_db
|
container_name: dockerosm_db
|
||||||
environment:
|
environment:
|
||||||
|
|
|
@ -1,9 +1,12 @@
|
||||||
FROM golang:1.10
|
FROM golang:1.10
|
||||||
MAINTAINER Etienne Trimaille <etienne.trimaille@gmail.com>
|
MAINTAINER Etienne Trimaille <etienne.trimaille@gmail.com>
|
||||||
|
|
||||||
|
RUN apt-get update
|
||||||
|
RUN wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | apt-key add -
|
||||||
|
RUN sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
|
||||||
RUN apt update && apt install -y python3-pip \
|
RUN apt update && apt install -y python3-pip \
|
||||||
libprotobuf-dev libleveldb-dev libgeos-dev \
|
libprotobuf-dev libleveldb-dev libgeos-dev \
|
||||||
libpq-dev python3-dev postgresql-client-9.6 python-setuptools \
|
libpq-dev python3-dev postgresql-client-11 python-setuptools \
|
||||||
gdal-bin \
|
gdal-bin \
|
||||||
--no-install-recommends
|
--no-install-recommends
|
||||||
|
|
||||||
|
|
|
@ -11,9 +11,32 @@ BEGIN
|
||||||
EXECUTE 'DELETE FROM ' || quote_ident(osm_table.table_name) || ' WHERE osm_id IN (
|
EXECUTE 'DELETE FROM ' || quote_ident(osm_table.table_name) || ' WHERE osm_id IN (
|
||||||
SELECT DISTINCT osm_id
|
SELECT DISTINCT osm_id
|
||||||
FROM ' || quote_ident(osm_table.table_name) || '
|
FROM ' || quote_ident(osm_table.table_name) || '
|
||||||
LEFT JOIN clip ON ST_Intersects(geometry, geom))
|
LEFT JOIN clip ON ST_Intersects(geometry, geom) where clip.ogc_fid is NULL)
|
||||||
;';
|
;';
|
||||||
END LOOP;
|
END LOOP;
|
||||||
END;
|
END;
|
||||||
$BODY$
|
$BODY$
|
||||||
LANGUAGE plpgsql;
|
LANGUAGE plpgsql;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- Function to validate geometry of all tables. To run it after creating the function sinmply run Select validate_geom();
|
||||||
|
CREATE OR REPLACE FUNCTION validate_geom() RETURNS void AS
|
||||||
|
$BODY$
|
||||||
|
DECLARE osm_tables CURSOR FOR
|
||||||
|
SELECT table_name
|
||||||
|
FROM information_schema.tables
|
||||||
|
WHERE table_schema='public'
|
||||||
|
AND table_type='BASE TABLE'
|
||||||
|
AND table_name LIKE 'osm_%';
|
||||||
|
BEGIN
|
||||||
|
FOR osm_table IN osm_tables LOOP
|
||||||
|
EXECUTE 'UPDATE ' || quote_ident(osm_table.table_name) || ' SET
|
||||||
|
geometry = ST_MakeValid(geometry) where ST_isValidreason(geometry) = ''F'' ;';
|
||||||
|
END LOOP;
|
||||||
|
END;
|
||||||
|
$BODY$
|
||||||
|
LANGUAGE plpgsql;
|
||||||
|
|
||||||
|
|
Ładowanie…
Reference in New Issue