commit
5805f89698
@ -5,6 +5,7 @@ FROM ubuntu:18.04
|
||||
|
||||
# Set up environment
|
||||
ENV TZ=UTC
|
||||
ENV AUTOVACUUM=on
|
||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
||||
|
||||
# Install dependencies
|
||||
@ -132,9 +133,9 @@ RUN ln -sf /proc/1/fd/1 /var/log/apache2/access.log \
|
||||
&& ln -sf /proc/1/fd/2 /var/log/apache2/error.log
|
||||
|
||||
# Configure PosgtreSQL
|
||||
COPY postgresql.custom.conf /etc/postgresql/10/main/
|
||||
COPY postgresql.custom.conf.tmpl /etc/postgresql/10/main/
|
||||
RUN chown -R postgres:postgres /var/lib/postgresql \
|
||||
&& chown postgres:postgres /etc/postgresql/10/main/postgresql.custom.conf \
|
||||
&& chown postgres:postgres /etc/postgresql/10/main/postgresql.custom.conf.tmpl \
|
||||
&& echo "\ninclude 'postgresql.custom.conf'" >> /etc/postgresql/10/main/postgresql.conf
|
||||
|
||||
# Start running
|
||||
|
@ -31,10 +31,18 @@ Tiles that have already been rendered will be stored in `/var/lib/mod_tile`. To
|
||||
|
||||
## Performance tuning
|
||||
|
||||
### THREADS
|
||||
|
||||
The import and tile serving processes use 4 threads by default, but this number can be changed by setting the `THREADS` environment variable. For example:
|
||||
|
||||
docker run -p 80:80 -e THREADS=24 -v openstreetmap-data:/var/lib/postgresql/10/main -d overv/openstreetmap-tile-server run
|
||||
|
||||
### AUTOVACUUM
|
||||
|
||||
The database use the autovacuum feature by default. This behavior can be changed with `AUTOVACUUM` environment variable. For example:
|
||||
|
||||
docker run -p 80:80 -e AUTOVACUUM=off -v openstreetmap-data:/var/lib/postgresql/10/main -d overv/openstreetmap-tile-server
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### ERROR: could not resize shared memory segment
|
||||
|
12
run.sh
12
run.sh
@ -1,5 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -x
|
||||
|
||||
function CreatePostgressqlConfig()
|
||||
{
|
||||
cp /etc/postgresql/10/main/postgresql.custom.conf.tmpl /etc/postgresql/10/main/postgresql.custom.conf
|
||||
sudo -u postgres echo "autovacuum = $AUTOVACUUM" >> /etc/postgresql/10/main/postgresql.custom.conf
|
||||
cat /etc/postgresql/10/main/postgresql.custom.conf
|
||||
}
|
||||
|
||||
if [ "$#" -ne 1 ]; then
|
||||
echo "usage: <import|run>"
|
||||
echo "commands:"
|
||||
@ -12,7 +21,7 @@ fi
|
||||
|
||||
if [ "$1" = "import" ]; then
|
||||
# Initialize PostgreSQL
|
||||
sudo -u postgres echo "autovacuum = off" >> /etc/postgresql/10/main/postgresql.custom.conf
|
||||
CreatePostgressqlConfig
|
||||
service postgresql start
|
||||
sudo -u postgres createuser renderer
|
||||
sudo -u postgres createdb -E UTF8 -O renderer gis
|
||||
@ -36,6 +45,7 @@ fi
|
||||
|
||||
if [ "$1" = "run" ]; then
|
||||
# Initialize PostgreSQL and Apache
|
||||
CreatePostgressqlConfig
|
||||
service postgresql start
|
||||
service apache2 restart
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user