diff --git a/.github/workflows/images.yml b/.github/workflows/images.yml index 9493099..f4df53a 100644 --- a/.github/workflows/images.yml +++ b/.github/workflows/images.yml @@ -27,6 +27,7 @@ jobs: matrix: app: - name: maps-tile-uploader + - name: maps-tile-server env: OUTPUTS_DIR: /tmp/outputs diff --git a/build/docker/Dockerfile.maps-tile-server b/build/docker/Dockerfile.maps-tile-server new file mode 100644 index 0000000..30c6936 --- /dev/null +++ b/build/docker/Dockerfile.maps-tile-server @@ -0,0 +1,23 @@ +# syntax=docker/dockerfile:1 + +FROM overv/openstreetmap-tile-server:latest + +LABEL org.opencontainers.image.title="Cinode Maps Tile Server" +LABEL org.opencontainers.image.description="OpenStreetMap tile server with jemalloc memory allocator" +LABEL org.opencontainers.image.source="https://github.com/cinode/maps" + +# Install jemalloc and clean up +RUN apt-get update && \ + apt-get install -y libjemalloc2 && \ + apt-get clean && \ + rm -rf /var/lib/apt/lists/* + +# Create wrapper script for renderd +RUN echo '#!/bin/sh\n\ +# Wrapper script for renderd that sets up jemalloc environment\n\ +export LD_PRELOAD="/usr/lib/x86_64-linux-gnu/libjemalloc.so.2"\n\ +export MALLOC_CONF="background_thread:true,metadata_thp:auto,dirty_decay_ms:5000,muzzy_decay_ms:5000"\n\ +\n\ +# Execute the original renderd binary\n\ +exec /usr/bin/renderd "$@"' > /usr/local/bin/renderd-wrapper && \ + chmod +x /usr/local/bin/renderd-wrapper diff --git a/helm/osm-machinery/scripts/tile-server-entrypoint.sh b/helm/osm-machinery/scripts/tile-server-entrypoint.sh index caa8d83..8087dee 100644 --- a/helm/osm-machinery/scripts/tile-server-entrypoint.sh +++ b/helm/osm-machinery/scripts/tile-server-entrypoint.sh @@ -24,4 +24,4 @@ mkdir /run/renderd || true chown renderer /run/renderd chown renderer /data/tiles -sudo -u renderer renderd -f -c /etc/renderd.conf +sudo -u renderer /usr/local/bin/renderd-wrapper -f -c /etc/renderd.conf diff --git a/helm/osm-machinery/values.yaml b/helm/osm-machinery/values.yaml index c113e13..a978b29 100644 --- a/helm/osm-machinery/values.yaml +++ b/helm/osm-machinery/values.yaml @@ -80,9 +80,9 @@ tileServer: resources: {} image: - registry: docker.io - repository: overv/openstreetmap-tile-server - tag: latest # TODO: Use fixed version + registry: ghcr.io + repository: cinode/maps-tile-server + tag: "0.0.9" securityContext: runAsUser: 1000 diff --git a/toolbox/release-chart-version.sh b/toolbox/release-chart-version.sh index 45b9d88..79c6ae3 100755 --- a/toolbox/release-chart-version.sh +++ b/toolbox/release-chart-version.sh @@ -42,8 +42,9 @@ fi for image in \ maps-tile-uploader \ + maps-tile-server \ ; do - # Update tile-uploader image tags in values.yaml + # Update image tags in values.yaml sed -i "/^[[:space:]]*repository\:[[:space:]]*cinode\/${image}/{n;s/^\([[:space:]]*\)tag: .*/\1tag: \"$new_version\"/}" "$VALUES_FILE" done