From f944b63aeba01d3bede25ea93b4385940db1f7ca Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Sun, 1 Apr 2018 21:51:30 +0300 Subject: [PATCH] Update CartoCSS, make image smaller --- Dockerfile | 49 ++++++++++++++++++++++++++++++------------------- renderd/run | 2 +- 2 files changed, 31 insertions(+), 20 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3abc7da..3a313b5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ # DOCKER-VERSION 1.3.1 -# VERSION 0.1 +# VERSION 0.2 FROM debian:stretch -MAINTAINER Maximilian Güntner +MAINTAINER Vitaliy Filippov ENV OSM_CARTO_VERSION 4.8.0 ENV OSM_BRIGHT_VERSION master @@ -12,31 +12,44 @@ ENV PARALLEL_BUILD 4 ADD etc /etc RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y -q \ less wget sudo curl unzip gdal-bin mapnik-utils apache2 runit autoconf libtool libmapnik-dev apache2-dev libgdal-dev \ - fonts-noto-hinted ca-certificates gnupg2 -RUN curl -L https://deb.nodesource.com/setup_8.x | bash - -RUN DEBIAN_FRONTEND=noninteractive apt-get install -y nodejs build-essential gyp -RUN npm install -g --unsafe carto@0.9.5 millstone + fonts-noto-cjk fonts-noto-hinted fonts-noto-unhinted fonts-hanazono ttf-unifont ca-certificates gnupg2 && \ + (curl -L https://deb.nodesource.com/setup_8.x | bash -) && \ + DEBIAN_FRONTEND=noninteractive apt-get install -y nodejs build-essential gyp && \ + apt-get clean && rm -rf /var/lib/apt/lists/* +RUN npm install -g --unsafe carto millstone -RUN cd /tmp && wget https://github.com/gravitystorm/openstreetmap-carto/archive/v$OSM_CARTO_VERSION.tar.gz && tar -xzf v$OSM_CARTO_VERSION.tar.gz -RUN mkdir /usr/share/mapnik && mv /tmp/openstreetmap-carto-$OSM_CARTO_VERSION /usr/share/mapnik/ -RUN cd /usr/share/mapnik/openstreetmap-carto-$OSM_CARTO_VERSION/ && scripts/get-shapefiles.py && cp project.mml project.mml.orig -RUN cd /usr/share/mapnik/openstreetmap-carto-$OSM_CARTO_VERSION/data && \ +RUN cd /tmp && \ + wget https://github.com/gravitystorm/openstreetmap-carto/archive/v$OSM_CARTO_VERSION.tar.gz && \ + tar -xzf v$OSM_CARTO_VERSION.tar.gz && rm v$OSM_CARTO_VERSION.tar.gz && \ + mkdir /usr/share/mapnik && \ + mv /tmp/openstreetmap-carto-$OSM_CARTO_VERSION /usr/share/mapnik/ + +RUN cd /usr/share/mapnik/openstreetmap-carto-$OSM_CARTO_VERSION/ && \ + scripts/get-shapefiles.py && \ + cp project.mml project.mml.orig && \ + cd /usr/share/mapnik/openstreetmap-carto-$OSM_CARTO_VERSION/data && \ mkdir -p ne_10m_populated_places && \ cd ne_10m_populated_places && \ wget http://www.naturalearthdata.com/http//www.naturalearthdata.com/download/10m/cultural/ne_10m_populated_places.zip && \ unzip ne_10m_populated_places.zip && \ rm ne_10m_populated_places.zip && \ - shapeindex ne_10m_populated_places.shp -# Delete zip files -RUN find /usr/share/mapnik/openstreetmap-carto-$OSM_CARTO_VERSION/data \( -type f -iname "*.zip" -o -iname "*.tgz" \) -delete + shapeindex ne_10m_populated_places.shp && \ + (find /usr/share/mapnik/openstreetmap-carto-$OSM_CARTO_VERSION/data \( -type f -iname "*.zip" -o -iname "*.tgz" \) -delete) + +RUN cd /tmp && \ + wget https://github.com/mapbox/osm-bright/archive/$OSM_BRIGHT_VERSION.tar.gz && \ + tar -xzf $OSM_BRIGHT_VERSION.tar.gz && rm $OSM_BRIGHT_VERSION.tar.gz && \ + mv /tmp/osm-bright-$OSM_BRIGHT_VERSION /usr/share/mapnik -RUN cd /tmp && wget https://github.com/mapbox/osm-bright/archive/$OSM_BRIGHT_VERSION.tar.gz && tar -xzf $OSM_BRIGHT_VERSION.tar.gz && rm $OSM_BRIGHT_VERSION.tar.gz -RUN mv /tmp/osm-bright-$OSM_BRIGHT_VERSION /usr/share/mapnik # Create symlink for shapefiles RUN ln -s /usr/share/mapnik/openstreetmap-carto-$OSM_CARTO_VERSION/data /usr/share/mapnik/osm-bright-$OSM_BRIGHT_VERSION/shp -RUN cd /tmp && wget https://github.com/openstreetmap/mod_tile/archive/$MOD_TILE_VERSION.tar.gz && tar -xzf $MOD_TILE_VERSION.tar.gz && rm $MOD_TILE_VERSION.tar.gz -RUN cd /tmp/mod_tile-$MOD_TILE_VERSION/ && ./autogen.sh && ./configure && make -j $PARALLEL_BUILD && make install && make install-mod_tile +RUN cd /tmp && \ + wget https://github.com/openstreetmap/mod_tile/archive/$MOD_TILE_VERSION.tar.gz && \ + tar -xzf $MOD_TILE_VERSION.tar.gz && \ + rm $MOD_TILE_VERSION.tar.gz && \ + cd /tmp/mod_tile-$MOD_TILE_VERSION/ && ./autogen.sh && ./configure && make -j $PARALLEL_BUILD && make install && make install-mod_tile && \ + cd / && rm -rf /tmp/mod_tile-$MOD_TILE_VERSION RUN mkdir -p /var/lib/mod_tile && chown www-data:www-data /var/lib/mod_tile RUN mkdir -p /var/run/renderd && chown www-data:www-data /var/run/renderd @@ -55,7 +68,5 @@ COPY ./renderd/renderd.conf /usr/local/etc/renderd.conf COPY runit_bootstrap /usr/sbin/runit_bootstrap RUN chmod 755 /usr/sbin/runit_bootstrap -RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* - EXPOSE 80 ENTRYPOINT ["/usr/sbin/runit_bootstrap"] diff --git a/renderd/run b/renderd/run index 043c28b..096c7b5 100644 --- a/renderd/run +++ b/renderd/run @@ -32,7 +32,7 @@ sed -i -e "s|^config\[\"path\"\].*|config\[\"path\"\] = \"$(pwd)\"|" \ ./make.py cd OSMBright -millstone project.mml > project.local.mml +perl -pe 's/"srs": null,//' project.mml > project.local.mml carto project.local.mml > style.xml exec sudo -u www-data LD_LIBRARY_PATH=/usr/local/lib/ /usr/local/bin/renderd -f --config /usr/local/etc/renderd.conf