nominatim postgres, apache
This commit is contained in:
parent
a4e346fc2d
commit
36023fc5e4
|
@ -9,7 +9,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Libre Developers Documentation 0\n"
|
"Project-Id-Version: Libre Developers Documentation 0\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2024-09-14 11:04-0600\n"
|
"POT-Creation-Date: 2024-09-14 11:33-0600\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language: en\n"
|
"Language: en\n"
|
||||||
|
@ -124,10 +124,50 @@ msgstr ""
|
||||||
msgid "Postgres is needed by Nominatim."
|
msgid "Postgres is needed by Nominatim."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../../_source/maps-libre-is.rst:139
|
#: ../../../_source/maps-libre-is.rst:137
|
||||||
|
msgid "Edit /etc/postgresql/15/main/postgresql.conf thusly:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:155
|
||||||
msgid "Nominatim Install"
|
msgid "Nominatim Install"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../../../_source/maps-libre-is.rst:140
|
#: ../../../_source/maps-libre-is.rst:156
|
||||||
msgid "As user nominatim."
|
msgid "As user nominatim."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:169
|
||||||
|
msgid "Create systemd files:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:185
|
||||||
|
msgid "Another systemd file:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:212
|
||||||
|
msgid "Start Nominatim systemd:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:222
|
||||||
|
msgid "Nominatim Apache"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:223
|
||||||
|
msgid "Thusly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:225
|
||||||
|
msgid "As user nominatim:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:231
|
||||||
|
msgid "As sudo user:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:245
|
||||||
|
msgid "Then connect to this to test:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../../../_source/maps-libre-is.rst:247
|
||||||
|
msgid "`<https://maps.libre.is/status>`_"
|
||||||
|
msgstr ""
|
||||||
|
|
|
@ -134,6 +134,22 @@ Postgres is needed by Nominatim.
|
||||||
sudo -u postgres createuser -s $USERNAME
|
sudo -u postgres createuser -s $USERNAME
|
||||||
sudo -u postgres createuser www-data
|
sudo -u postgres createuser www-data
|
||||||
|
|
||||||
|
Edit /etc/postgresql/15/main/postgresql.conf thusly:
|
||||||
|
|
||||||
|
.. code-block:: postgres
|
||||||
|
|
||||||
|
shared_buffers = 2GB
|
||||||
|
maintenance_work_mem = (10GB)
|
||||||
|
autovacuum_work_mem = 2GB
|
||||||
|
work_mem = (50MB)
|
||||||
|
synchronous_commit = off
|
||||||
|
max_wal_size = 1GB
|
||||||
|
checkpoint_timeout = 60min
|
||||||
|
checkpoint_completion_target = 0.9
|
||||||
|
random_page_cost = 1.0
|
||||||
|
wal_level = minimal
|
||||||
|
max_wal_senders = 0
|
||||||
|
|
||||||
|
|
||||||
Nominatim Install
|
Nominatim Install
|
||||||
=================
|
=================
|
||||||
|
@ -147,3 +163,87 @@ As user nominatim.
|
||||||
virtualenv $USERHOME/nominatim-venv
|
virtualenv $USERHOME/nominatim-venv
|
||||||
$USERHOME/nominatim-venv/bin/pip install nominatim-db
|
$USERHOME/nominatim-venv/bin/pip install nominatim-db
|
||||||
. $USERHOME/nominatim-venv/bin/activate
|
. $USERHOME/nominatim-venv/bin/activate
|
||||||
|
$USERHOME/nominatim-venv/bin/pip install psycopg[binary] falcon uvicorn gunicorn
|
||||||
|
$USERHOME/nominatim-venv/bin/pip install nominatim-api
|
||||||
|
|
||||||
|
Create systemd files:
|
||||||
|
|
||||||
|
.. code-block::
|
||||||
|
|
||||||
|
sudo tee /etc/systemd/system/nominatim.socket << EOFSOCKETSYSTEMD
|
||||||
|
[Unit]
|
||||||
|
Description=Gunicorn socket for Nominatim
|
||||||
|
|
||||||
|
[Socket]
|
||||||
|
ListenStream=/run/nominatim.sock
|
||||||
|
SocketUser=www-data
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOFSOCKETSYSTEMD
|
||||||
|
|
||||||
|
Another systemd file:
|
||||||
|
|
||||||
|
.. code-block::
|
||||||
|
|
||||||
|
sudo tee /etc/systemd/system/nominatim.service << EOFNOMINATIMSYSTEMD
|
||||||
|
[Unit]
|
||||||
|
Description=Nominatim running as a gunicorn application
|
||||||
|
After=network.target
|
||||||
|
Requires=nominatim.socket
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=simple
|
||||||
|
User=www-data
|
||||||
|
Group=www-data
|
||||||
|
WorkingDirectory=$USERHOME/nominatim-project
|
||||||
|
ExecStart=$USERHOME/nominatim-venv/bin/gunicorn -b unix:/run/nominatim.sock -w 4 -k uvicorn.workers.UvicornWorker nominatim_api.server.falcon.server:run_wsgi
|
||||||
|
ExecReload=/bin/kill -s HUP \$MAINPID
|
||||||
|
StandardOutput=append:/var/log/gunicorn-nominatim.log
|
||||||
|
StandardError=inherit
|
||||||
|
PrivateTmp=true
|
||||||
|
TimeoutStopSec=5
|
||||||
|
KillMode=mixed
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOFNOMINATIMSYSTEMD
|
||||||
|
|
||||||
|
Start Nominatim systemd:
|
||||||
|
|
||||||
|
.. code-block::
|
||||||
|
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
sudo systemctl enable nominatim.socket
|
||||||
|
sudo systemctl start nominatim.socket
|
||||||
|
sudo systemctl enable nominatim.service
|
||||||
|
|
||||||
|
Nominatim Apache
|
||||||
|
================
|
||||||
|
Thusly.
|
||||||
|
|
||||||
|
As user nominatim:
|
||||||
|
|
||||||
|
.. code-block::
|
||||||
|
|
||||||
|
mkdir $USERHOME/nominatim-project
|
||||||
|
|
||||||
|
As sudo user:
|
||||||
|
|
||||||
|
.. code-block::
|
||||||
|
|
||||||
|
sudo a2enmod proxy_http
|
||||||
|
sudo tee /etc/apache2/conf-available/nominatim.conf << EOFAPACHECONF
|
||||||
|
#ProxyPass /nominatim "unix:/run/nominatim.sock|http://localhost/"
|
||||||
|
ProxyPass / "unix:/run/nominatim.sock|http://localhost/"
|
||||||
|
EOFAPACHECONF
|
||||||
|
|
||||||
|
sudo a2enconf nominatim
|
||||||
|
sudo systemctl restart apache2
|
||||||
|
|
||||||
|
|
||||||
|
Then connect to this to test:
|
||||||
|
|
||||||
|
`<https://maps.libre.is/status>`_
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue