-
Notifications
You must be signed in to change notification settings - Fork 19
/
Copy pathDockerfile
66 lines (52 loc) · 2.13 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
FROM postgis/postgis:16-3.4
LABEL maintainer="PgOSM Flex - https://github.com/rustprooflabs/pgosm-flex"
ARG OSM2PGSQL_BRANCH=master
ARG OSM2PGSQL_REPO=https://github.com/osm2pgsql-dev/osm2pgsql.git
RUN apt-get update \
# Removed upgrade per https://github.com/rustprooflabs/pgosm-flex/issues/322
#&& apt-get upgrade -y \
&& apt-get install -y --no-install-recommends \
sqitch wget ca-certificates \
git make cmake g++ \
libboost-dev libboost-system-dev \
libboost-filesystem-dev libexpat1-dev zlib1g-dev \
libbz2-dev libpq-dev libproj-dev lua5.4 liblua5.4-dev \
python3 python3-distutils \
postgresql-server-dev-16 \
curl unzip \
postgresql-16-pgrouting \
nlohmann-json3-dev \
osmium-tool \
&& rm -rf /var/lib/apt/lists/*
RUN wget https://luarocks.org/releases/luarocks-3.9.2.tar.gz \
&& tar zxpf luarocks-3.9.2.tar.gz \
&& cd luarocks-3.9.2 \
&& ./configure && make && make install
RUN curl -o /tmp/get-pip.py https://bootstrap.pypa.io/get-pip.py \
&& python3 /tmp/get-pip.py \
&& rm /tmp/get-pip.py
RUN luarocks install inifile
RUN luarocks install luasql-postgres PGSQL_INCDIR=/usr/include/postgresql/
WORKDIR /tmp
RUN git clone --depth 1 --branch $OSM2PGSQL_BRANCH $OSM2PGSQL_REPO \
&& mkdir osm2pgsql/build \
&& cd osm2pgsql/build \
&& cmake .. -D USE_PROJ_LIB=6 \
&& make -j$(nproc) \
&& make install \
&& apt remove -y \
make cmake g++ \
libexpat1-dev zlib1g-dev \
libbz2-dev libproj-dev \
curl \
&& apt autoremove -y \
&& cd /tmp && rm -r /tmp/osm2pgsql
RUN wget https://github.com/rustprooflabs/pgdd/releases/download/0.5.1/pgdd_0.5.1_postgis_pg16_amd64.deb \
&& dpkg -i ./pgdd_0.5.1_postgis_pg16_amd64.deb \
&& rm ./pgdd_0.5.1_postgis_pg16_amd64.deb \
&& wget https://github.com/rustprooflabs/convert/releases/download/0.0.3/convert_0.0.3_postgis_pg16_amd64.deb \
&& dpkg -i ./convert_0.0.3_postgis_pg16_amd64.deb \
&& rm ./convert_0.0.3_postgis_pg16_amd64.deb
WORKDIR /app
COPY . ./
RUN pip install --upgrade pip && pip install -r requirements.txt