_renderd user is required for renderd. Providing wrolpi user the _renderd password.

This commit is contained in:
Roland 2023-01-18 08:57:02 -07:00
parent c7e9c6f23b
commit 7904f1e11d
No known key found for this signature in database
GPG key ID: 9D6DBD3ACF11AB93
5 changed files with 36 additions and 23 deletions

View file

@ -5,7 +5,7 @@ After=network.target auditd.service
[Service]
ExecStart=/usr/bin/renderd -f -c /etc/renderd.conf
User=wrolpi
User=_renderd
[Install]
WantedBy=multi-user.target

View file

@ -3,15 +3,17 @@
1. Checkout pi-gen (64 bit):
* `git clone --branch arm64 https://github.com/RPI-Distro/pi-gen.git`
2. Copy these configs to pi-gen (modify for your directories):
2. Copy pi-gen config (modify for your directories):
* `cp /home/user/wrolpi/pi-gen/config.txt /home/user/pi-gen/config.txt`
3. Copy stage scripts to pi-gen:
* `cp -r /home/user/wrolpi/pi-gen/stage2/02-wrolpi /home/user/pi-gen/stage2/`
3. Change to the pi-gen directory:
4. Change to the pi-gen directory:
* `cd /home/user/pi-gen`
4. Create directory for files:
5. Create directory for files:
* `mkdir stage2/02-wrolpi/files`
5. Convert a map PBF file to your initial map DB dump:
6. Convert a map PBF file to your initial map DB dump:
* `docker run --rm -v /home/user/district-of-columbia-230111.osm.pbf:/data/region.osm.pbf lrnselfreliance/osm-map-dumper | gzip > /home/user/pi-gen/stage2/02-wrolpi/files/district-of-columbia-230111.dump.gz`
6. Run the build:
7. Run the build:
* `sudo /bin/bash ./build.sh -c config.txt`
Your final image should be in `pi-gen/work/WROLPi/export-image/`

12
pi-gen/config.txt Normal file
View file

@ -0,0 +1,12 @@
IMG_NAME=WROLPi
BASE_QCOW2_SIZE=12G
RELEASE=bullseye
LOCALE_DEFAULT=en_US.UTF-8
TARGET_HOSTNAME=wrolpi
KEYBOARD_KEYMAP=en_US
KEYBOARD_LAYOUT="English (US)"
FIRST_USER_NAME=wrolpi
FIRST_USER_PASS=wrolpi
DISABLE_FIRST_BOOT_USER_RENAME=1
ENABLE_SSH=1
DEPLOY_COMPRESSION=xz

View file

@ -3,7 +3,7 @@
set -e
set -x
# Initialize gis database.
# Create mapnik config.
if [ ! -d /opt/openstreetmap-carto ]; then
git clone https://github.com/lrnselfreliance/openstreetmap-carto.git /opt/openstreetmap-carto
fi
@ -14,21 +14,21 @@ if [[ ! -f /opt/openstreetmap-carto/mapnik.xml || ! -s /opt/openstreetmap-carto/
/usr/bin/carto project.mml >/opt/openstreetmap-carto/mapnik.xml
fi
# WROLPi user can access WROLPi and Map database.
cat > /home/wrolpi/.pgpass << 'EOF'
127.0.0.1:5432:gis:_renderd:wrolpi
127.0.0.1:5432:wrolpi:wrolpi:wrolpi
EOF
chmod 0600 /home/wrolpi/.pgpass
# Configure renderd.
cp /opt/wrolpi/etc/debian11/renderd.conf /etc/renderd.conf
# Configure Apache2 to listen on 8084.
# Configure Apache2 to listen on 8084. Import renderd into apache.
cp /opt/wrolpi/etc/debian11/ports.conf /etc/apache2/ports.conf
cp /opt/wrolpi/etc/debian11/000-default.conf /etc/apache2/sites-available/000-default.conf
cp /opt/wrolpi/etc/ubuntu20.04/mod_tile.conf /etc/apache2/conf-enabled/mod_tile.conf
# Copy Leaflet files to Apache's directory so they can be used offline.
cp /opt/wrolpi/etc/debian11/index.html \
/opt/wrolpi/modules/map/leaflet.js \
/opt/wrolpi/modules/map/leaflet.css /var/www/html/
chmod 644 /var/www/html/*
# mod_tile needs to be accessbile to renderd.
[ ! -d /var/lib/mod_tile ] && mkdir /var/lib/mod_tile
chown -R _renderd:_renderd /var/lib/mod_tile
# Enable mod-tile.
/usr/sbin/a2enconf mod_tile

View file

@ -12,17 +12,16 @@ sudo -u wrolpi /bin/bash -c 'cd /opt/wrolpi && ./main.py db upgrade'
# Create gis (map) database.
sudo -u postgres psql -c '\l' | grep gis || (
sudo -u postgres createuser wrolpi
sudo -u postgres createdb -E UTF8 -O wrolpi gis
sudo -u postgres createuser _renderd
sudo -u postgres psql -c "alter user _renderd password 'wrolpi'"
sudo -u postgres createdb -E UTF8 -O _renderd gis
sudo -u postgres psql -d gis -c "CREATE EXTENSION postgis"
sudo -u postgres psql -d gis -c "CREATE EXTENSION hstore"
echo "Created gis database"
)
# Restore initial dump.
zcat /opt/wrolpi-blobs/gis-map.dump.gz | sudo -u wrolpi pg_restore --no-owner --role=wrolpi -d gis
sudo -u postgres psql gis -c 'ALTER TABLE geography_columns OWNER TO wrolpi'
sudo -u postgres psql -d gis -c "ALTER TABLE spatial_ref_sys OWNER TO wrolpi"
# Restore ownership of map files.
sudo chown -R wrolpi:wrolpi /var/lib/mod_tile /run/renderd
zcat /opt/wrolpi-blobs/gis-map.dump.gz | sudo -u postgres pg_restore --no-owner --role=_renderd -d gis
sudo -u postgres psql -d gis -c 'ALTER TABLE geography_columns OWNER TO _renderd'
sudo -u postgres psql -d gis -c "ALTER TABLE spatial_ref_sys OWNER TO _renderd"
# Clear map tile cache files.
[ -d /var/lib/mod_tile/ajt ] && sudo rm -r /var/lib/mod_tile/ajt