nilsnolde / docker-valhalla

This is our flexible Docker repository for the Valhalla routing engine
MIT License
257 stars 74 forks source link

Update to Ubuntu 24.04 LTS #164

Closed chrstnbwnkl closed 2 months ago

chrstnbwnkl commented 2 months ago

Fixes #163

martbock commented 2 months ago

Thanks for the quick reaction :pray:

I took a peek in the base Dockerfile and noticed the Python base path changed. I got a working build with the following changes based on the recently changed lines in the valhalla/valhalla Dockerfile:

  ...

- FROM ubuntu:23.04 as runner_base
+ FROM ubuntu:24.04 as runner_base
  MAINTAINER Nils Nolde <nils@gis-ops.com>

  RUN apt-get update > /dev/null && \
    export DEBIAN_FRONTEND=noninteractive && \
-   apt-get install -y libluajit-5.1-2 libgdal32 \
+   apt-get install -y libcurl4 libczmq4 libluajit-5.1-2 libgdal34 \
    libzmq5 libczmq4 spatialite-bin libprotobuf-lite32 sudo locales \
    libsqlite3-0 libsqlite3-mod-spatialite libcurl4 \
-   python3.11-minimal python3-distutils curl unzip moreutils jq spatialite-bin python-is-python3 > /dev/null
+   curl gdb locales parallel python3-minimal python-is-python3 python3-shapely python3-requests \
+   unzip moreutils jq \
+   > /dev/null

  COPY --from=builder /usr/local /usr/local
- COPY --from=builder /usr/lib/python3/dist-packages/valhalla/* /usr/lib/python3/dist-packages/valhalla/
+ COPY --from=builder /usr/local/lib/python3.12/dist-packages/valhalla /usr/local/lib/python3.12/dist-packages/

  ...

Note that I might have copied over more apt packages than what is actually required, but I didn't have time to check which of the individual packages was missing before. I'm guessing you know that better than me anyways 😇

chrstnbwnkl commented 2 months ago

Yeah I realized it was probably the upstream base image's upgrade to 24.04, but didn't have the time this weekend to make all the required changes. Thanks for the pointers!