Skip to content

Commit cb70cdb

Browse files
committed
Create custom tile server image using jemalloc
1 parent 03824d4 commit cb70cdb

5 files changed

Lines changed: 29 additions & 4 deletions

File tree

.github/workflows/images.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
matrix:
2828
app:
2929
- name: maps-tile-uploader
30+
- name: maps-tile-server
3031
env:
3132
OUTPUTS_DIR: /tmp/outputs
3233

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# syntax=docker/dockerfile:1
2+
3+
FROM overv/openstreetmap-tile-server:latest
4+
5+
LABEL org.opencontainers.image.title="Cinode Maps Tile Server"
6+
LABEL org.opencontainers.image.description="OpenStreetMap tile server with jemalloc memory allocator"
7+
LABEL org.opencontainers.image.source="https://github.com/cinode/maps"
8+
9+
# Install jemalloc and clean up
10+
RUN apt-get update && \
11+
apt-get install -y libjemalloc2 && \
12+
apt-get clean && \
13+
rm -rf /var/lib/apt/lists/*
14+
15+
# Create wrapper script for renderd
16+
RUN echo '#!/bin/sh\n\
17+
# Wrapper script for renderd that sets up jemalloc environment\n\
18+
export LD_PRELOAD="/usr/lib/x86_64-linux-gnu/libjemalloc.so.2"\n\
19+
export MALLOC_CONF="background_thread:true,metadata_thp:auto,dirty_decay_ms:5000,muzzy_decay_ms:5000"\n\
20+
\n\
21+
# Execute the original renderd binary\n\
22+
exec /usr/bin/renderd "$@"' > /usr/local/bin/renderd-wrapper && \
23+
chmod +x /usr/local/bin/renderd-wrapper

helm/osm-machinery/scripts/tile-server-entrypoint.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,4 +24,4 @@ mkdir /run/renderd || true
2424
chown renderer /run/renderd
2525
chown renderer /data/tiles
2626

27-
sudo -u renderer renderd -f -c /etc/renderd.conf
27+
sudo -u renderer /usr/local/bin/renderd-wrapper -f -c /etc/renderd.conf

helm/osm-machinery/values.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@ tileServer:
8080
resources: {}
8181

8282
image:
83-
registry: docker.io
84-
repository: overv/openstreetmap-tile-server
83+
registry: ghcr.io
84+
repository: cinode/maps-tile-server
8585
tag: latest # TODO: Use fixed version
8686

8787
securityContext:

toolbox/release-chart-version.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,9 @@ fi
4242

4343
for image in \
4444
maps-tile-uploader \
45+
maps-tile-server \
4546
; do
46-
# Update tile-uploader image tags in values.yaml
47+
# Update image tags in values.yaml
4748
sed -i "/^[[:space:]]*repository\:[[:space:]]*cinode\/${image}/{n;s/^\([[:space:]]*\)tag: .*/\1tag: \"$new_version\"/}" "$VALUES_FILE"
4849
done
4950

0 commit comments

Comments
 (0)