Skip to content

Commit 3f4d6cb

Browse files
committed
Update database to pg17
1 parent 95c3505 commit 3f4d6cb

File tree

12 files changed

+46
-356
lines changed

12 files changed

+46
-356
lines changed

images/db/Dockerfile

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,39 @@
1+
# Stage 1: Compilar el plugin para PostgreSQL 17
2+
FROM postgres:17 AS builder
3+
4+
# Instalar dependencias de compilación
5+
RUN apt-get update && apt-get install -y --no-install-recommends \
6+
ca-certificates \
7+
build-essential \
8+
cmake \
9+
git \
10+
libboost-program-options-dev \
11+
libbz2-dev \
12+
libexpat1-dev \
13+
libosmium2-dev \
14+
libprotozero-dev \
15+
libyaml-cpp-dev \
16+
libpqxx-dev \
17+
postgresql-server-dev-17 \
18+
&& update-ca-certificates \
19+
&& rm -rf /var/lib/apt/lists/*
20+
21+
# Clonar y compilar el plugin osmdbt para PostgreSQL 17
22+
RUN git clone https://github.com/openstreetmap/osmdbt.git /tmp/osmdbt && \
23+
cd /tmp/osmdbt && \
24+
git checkout v0.9 && \
25+
cd postgresql-plugin && \
26+
mkdir -p build && cd build && \
27+
cmake .. && \
28+
make
29+
130
FROM postgres:17
2-
RUN apt-get update
31+
32+
COPY --from=builder /tmp/osmdbt/postgresql-plugin/build/osm-logical.so /usr/lib/postgresql/17/lib/osm-logical.so
33+
34+
RUN ln -s /usr/lib/postgresql/17/lib/osm-logical.so /usr/lib/postgresql/17/lib/osm_logical.so
35+
36+
RUN chown postgres:postgres /usr/lib/postgresql/17/lib/osm-logical.so && \
37+
chown postgres:postgres /usr/lib/postgresql/17/lib/osm_logical.so && \
38+
chmod 755 /usr/lib/postgresql/17/lib/osm-logical.so && \
39+
chmod 755 /usr/lib/postgresql/17/lib/osm_logical.so

images/db/README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Docker setup for postgres database instance
22

3-
The OSM `API server` database - builds off a postgres 10 docker image, and installs custom functions needed by `openstreetmap`.
3+
The OSM `API server` database - builds off a **PostgreSQL 17** docker image, and installs custom functions needed by `openstreetmap`.
4+
5+
The database includes the **osmdbt plugin v0.9** for logical replication support.
46

57
The functions currently are copied over from the `openstreetmap-website` code-base. There should ideally be a better way to do this.
68

@@ -35,3 +37,8 @@ In order to run this container we need environment variables, these can be found
3537
```sh
3638
pg_isready -h 127.0.0.1 -p 5432
3739
```
40+
41+
### Installed Components
42+
43+
- **PostgreSQL**: 17
44+
- **osmdbt plugin**: v0.9 (osm_logical replication plugin)

images/db/docker_postgres.sh

Lines changed: 0 additions & 22 deletions
This file was deleted.

images/db/functions/Makefile

Lines changed: 0 additions & 24 deletions
This file was deleted.

images/db/functions/functions.sql

Lines changed: 0 additions & 43 deletions
This file was deleted.

images/db/functions/maptile.c

Lines changed: 0 additions & 36 deletions
This file was deleted.

images/db/functions/quadtile.c

Lines changed: 0 additions & 25 deletions
This file was deleted.

images/db/functions/xid_to_int4.c

Lines changed: 0 additions & 23 deletions
This file was deleted.

images/db/lib/quad_tile/.gitignore

Lines changed: 0 additions & 3 deletions
This file was deleted.

images/db/lib/quad_tile/extconf.rb

Lines changed: 0 additions & 5 deletions
This file was deleted.

0 commit comments

Comments
 (0)