Инструменты пользователя

Инструменты сайта

  • Показать страницу
  • История страницы
  • Ссылки сюда
  • Оставить на чай
  • Экспорт в PDF
  • Наверх

  • software:linux_server:tile_map_server_22.04.4

    Различия

    Показаны различия между двумя версиями страницы.

    Ссылка на это сравнение

    Предыдущая версия справа и слеваПредыдущая версия
    Следующая версия
    Предыдущая версия
    software:linux_server:tile_map_server_22.04.4 [2024/08/04 16:54] – [Продолжаем установку] vladpolskiysoftware:linux_server:tile_map_server_22.04.4 [2024/08/04 23:09] (текущий) – [Ссылки и литература] vladpolskiy
    Строка 172: Строка 172:
     Далее мы установим osm2pgsql: Далее мы установим osm2pgsql:
     <code> <code>
    -sudo apt install osm2pgsql+sudo apt --yes install osm2pgsql
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_23.png?|}}+{{:software:linux_server:tile_map_server_24.04._19.png?|}}
     \\   \\  
     Ошибок обычно быть не должно Ошибок обычно быть не должно
    -{{:software:linux_server:tile_map_server_22.04.4_24.png?|}}+{{:software:linux_server:tile_map_server_24.04._20.png?|}}
     \\   \\  
      
    Строка 183: Строка 183:
      
      
    -=====Mapnik===== +=====Mapnik и python3===== 
    -Далее мы установим Mapnik, используя версию по умолчанию в Ubuntu 24.04:+Далее мы установим Mapnik python3, используя версию по умолчанию в Ubuntu 24.04:
      
     <code> <code>
    -sudo apt --yes install screen autoconf apache2-dev  imagemagick-6.q16hdri libtool libxml2-dev libbz2-dev libgeos-dev libgeos++-dev libproj-dev gdal-bin libmapnik-dev mapnik-utils python3-mapnik python3-psycopg2 python3-yaml +sudo apt --yes install mapnik-utils python3-mapnik python3-psycopg2 python3-yaml 
     </code> </code>
    -{{:software:linux_server:tile_map_server_24.04._10.png?|}}+{{:software:linux_server:tile_map_server_24.04._21.png?|}}
     \\   \\  
     Проверим правильность установки Mapnik: Проверим правильность установки Mapnik:
    Строка 195: Строка 195:
     python3 python3
     </code> </code>
    -{{:software:linux_server:tile_map_server_24.04._9.png?|}}+{{:software:linux_server:tile_map_server_24.04._22.png?|}}
      
     <code> <code>
     import mapnik import mapnik
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_28.png?|}}+{{:software:linux_server:tile_map_server_24.04._23.png?|}}
     \\   \\  
     (Ответ: >>> и без ошибок, то библиотека Mapnik была найдена Python.) (Ответ: >>> и без ошибок, то библиотека Mapnik была найдена Python.)
    Строка 207: Строка 207:
     quit() quit()
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_29.png?|}}+{{:software:linux_server:tile_map_server_24.04._24.png?|}}
     \\   \\  
     выход  выход 
    Строка 230: Строка 230:
      
      
    -=====Установка mod_tile и render===== +=====Установка Apache, mod_tile и render===== 
    -  * Далее мы установим mod_tile и renderd. «mod_tile» — это модуль Apache, который обрабатывает запросы на тайлы; «render» — это демон, который фактически отображает тайлы, когда «mod_tile» их запрашивает. Мы будем использовать ветку «switch2osm» +  * Далее мы установим Apache, mod_tile и renderd. «mod_tile» — это модуль Apache, который обрабатывает запросы на тайлы; «render» — это демон, который фактически отображает тайлы, когда «mod_tile» их запрашивает. Мы будем использовать ветку «switch2osm» 
       * https://github.com/SomeoneElseOSM/mod_tile, которая сама является ответвлением   * https://github.com/SomeoneElseOSM/mod_tile, которая сама является ответвлением
       * https://github.com/openstreetmap/mod_tile, но модифицирована для поддержки Ubuntu 20.04 и с пара других изменений для работы на стандартном сервере Ubuntu, а не на одном из серверов рендеринга OSM.   * https://github.com/openstreetmap/mod_tile, но модифицирована для поддержки Ubuntu 20.04 и с пара других изменений для работы на стандартном сервере Ubuntu, а не на одном из серверов рендеринга OSM.
     +====Установка пакетов===  
     +В репозитории Ubuntu по умолчанию нет пакетов mod_tileи renderd, но мы можем установить их из OSM PPA. 
     +<code> 
     +sudo apt install software-properties-common 
     +sudo add-apt-repository ppa:osmadmins/ppa 
     +</code> 
     +{{:software:linux_server:tile_map_server_24.04._25.png?|}} 
     +Нажмем [ENTER] для продолжения. 
     +{{:software:linux_server:tile_map_server_24.04._26.png?|}} 
     +Установим веб-сервер Apache. Конфигурационный файл renderd будет создан в /etc/apache2/conf-available/renderd.conf 
     +<code> 
     +sudo apt --yes install apache2 apache2-dev  libapache2-mod-tile renderd  
     +</code> 
     +{{:software:linux_server:tile_map_server_24.04._28.png?|}} 
     +Включим mod-tile модуль. 
     +<code> 
     +sudo a2enmod tile 
     +</code> 
     +{{:software:linux_server:tile_map_server_24.04._27.png?|}} 
     +если установили из репозитория, то компиляцию пропускаем
     ====Скомпилируем исходный код mod_tile==== ====Скомпилируем исходный код mod_tile====
     Создадим в домашнем каталоге папку src Создадим в домашнем каталоге папку src
    Строка 240: Строка 259:
     mkdir ~/src mkdir ~/src
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_30.png?|}} +{{:software:linux_server:tile_map_server_24.04._29.png?|}} 
    -\\   +  перейдем в эту папку
    -и перейдем в эту папку+
     <code> <code>
     cd ~/src cd ~/src
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_31.png?|}} +{{:software:linux_server:tile_map_server_24.04._30.png?|}} 
     +  * Обновим установленные пакеты
     <code> <code>
    -git clone -b switch2osm https://github.com/SomeoneElseOSM/mod_tile.git+sudo apt update && sudo apt --yes upgrade
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_32.png?|}} +{{:software:linux_server:tile_map_server_24.04._71.png?|}} 
     +  * Установим зависимости сборки (libmemcached-dev и librados-dev не являются обязательными)
     <code> <code>
    -cd mod_tile+sudo apt --no-install-recommends --yes install \ 
     +  apache2 \ 
     +  apache2-dev \ 
     +  cmake \ 
     +  curl \ 
     +  g++ \ 
     +  gcc \ 
     +  git \ 
     +  libcairo2-dev \ 
     +  libcurl4-openssl-dev \ 
     +  libglib2.0-dev \ 
     +  libiniparser-dev \ 
     +  libmapnik-dev \ 
     +  libmemcached-dev \ 
     +  librados-dev
     </code> </code>
    -перейдя в каталог mod_tile +{{:software:linux_server:tile_map_server_24.04._72.png?|}} 
    -\\   +  Загрузим, создадим, протестируем и установим `mod_tile`
    -{{:software:linux_server:tile_map_server_22.04.4_33.png?|}} +
    -\\   +
    -Запустим скрипт autogen.sh+
     <code> <code>
    -./autogen.sh+export CMAKE_BUILD_PARALLEL_LEVEL=$(nproc) 
     +rm -rf /tmp/mod_tile_src /tmp/mod_tile_build 
     +mkdir /tmp/mod_tile_src /tmp/mod_tile_build 
     +cd /tmp/mod_tile_src 
     +git clone --depth 1 https://github.com/openstreetmap/mod_tile.git . 
     +cd /tmp/mod_tile_build 
     +cmake -B . -S /tmp/mod_tile_src \ 
     +  -DCMAKE_BUILD_TYPE:STRING=Release \ 
     +  -DCMAKE_INSTALL_LOCALSTATEDIR:PATH=/var \ 
     +  -DCMAKE_INSTALL_PREFIX:PATH=/usr \ 
     +  -DCMAKE_INSTALL_RUNSTATEDIR:PATH=/run \ 
     +  -DCMAKE_INSTALL_SYSCONFDIR:PATH=/etc \ 
     +  -DENABLE_TESTS:BOOL=ON 
     +cmake --build . 
     +ctest 
     +sudo cmake --install --strip
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_34.png?|}} +{{:software:linux_server:tile_map_server_24.04._73.png?|}} 
    -\\   +  * Должно ответить 100% тестом 
    -(это должно закончится “autoreconf: Leaving directory ‘.’”.) +{{:software:linux_server:tile_map_server_24.04._74.png?|}} 
    -\\   +  * Включить конфигурацию модуля пакета a2enmod
    -{{:software:linux_server:tile_map_server_22.04.4_35.png?|}} +
    -\\   +
    -(в предыдущих установках мне приходилось проделывать это 2 раза для создания папки mod_tile в директории src) +
    -\\   +
    -{{:software:nas:osm_420_30.png|}} +
     <code> <code>
    -./configure+a2enmod tile
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_36.png?|}} +{{:software:linux_server:tile_map_server_24.04._75.png?|}} 
    -\\   +  * Запустим сервис
    -то должно закончится “config.status: executing libtool commands”) +
    -\\   +
    -{{:software:linux_server:tile_map_server_22.04.4_37.png?|}} +
     <code> <code>
    -make+sudo apache2ctl start
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_38.png?|}} +{{:software:linux_server:tile_map_server_24.04._76.png?|}} 
    -\\   +  * Перезапустим  сервис веб-сервера apache2
    -Обратите внимание, что здесь некоторые «тревожные» сообщения будут прокручиваться вверх по экрану. Однако это должно заканчиваться на «make[1]: Leaving directory '/home/alisa/src/mod_tile'» +
    -\\   +
    -{{:software:linux_server:tile_map_server_22.04.4_38_1.png?|}} +
     <code> <code>
    -sudo make install+sudo service apache2 reload
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_38_2.png?|}} +{{:software:linux_server:tile_map_server_24.04._77.png?|}} 
    -\\   +  * Проверим статус сервиса веб-сервера apache2
    -(это должно закончиться «make[1]: выход из каталога должно быть '/home/alisa/src/mod_tile'») +
    -\\   +
    -{{:software:linux_server:tile_map_server_22.04.4_38_3.png?|}} +
     <code> <code>
    -sudo make install-mod_tile+sudo systemctl status apache2
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_38_4.png?|}} +{{:software:linux_server:tile_map_server_24.04._78.png?|}}
    -\\   +
    -(это должно закончиться «chmod 644 /usr/lib/apache2/modules/mod_tile.so») +
    -\\   +
    -{{:software:linux_server:tile_map_server_22.04.4_38_5.png?|}}+
      
    -<code> 
    -sudo ldconfig 
    -</code> 
    -{{:software:linux_server:tile_map_server_22.04.4_38_6.png?|}} 
    -\\   
    -(без ответа) 
    -\\   
    -{{:software:linux_server:tile_map_server_22.04.4_38_7.png?|}} 
    -{{:software:linux_server:tile_map_server_22.04.4_40.png?|}} 
    -{{:software:linux_server:tile_map_server_22.04.4_41.png?|}} 
    -{{:software:linux_server:tile_map_server_22.04.4_42.png?|}} 
    -{{:software:linux_server:tile_map_server_22.04.4_43.png?|}} 
     =====Конфигурация таблицы стилей===== =====Конфигурация таблицы стилей=====
       * Теперь, когда все необходимое программное обеспечение установлено, вам нужно загрузить и настроить таблицу стилей.   * Теперь, когда все необходимое программное обеспечение установлено, вам нужно загрузить и настроить таблицу стилей.
       * Здесь мы будем использовать тот же стиль, что и на «стандартной» карте на веб-сайте openstreetmap.org.   * Здесь мы будем использовать тот же стиль, что и на «стандартной» карте на веб-сайте openstreetmap.org.
    -  * Переходим в домашний каталог.+ Создадим, если ранее этого не делали каталог src в домашней директории 
     +<code> 
     +mkdir ~/src 
     +</code> 
     +{{:software:linux_server:tile_map_server_24.04._29.png?|}} 
     +Перейдем в каталог src
     <code> <code>
     cd ~/src cd ~/src
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_50.png?|}} +{{:software:linux_server:tile_map_server_24.04._30.png?|}} 
     +\\   
     +клонируем репозитарий 
     +\\ 
     <code> <code>
     git clone https://github.com/gravitystorm/openstreetmap-carto git clone https://github.com/gravitystorm/openstreetmap-carto
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_51.png?|}} +{{:software:linux_server:tile_map_server_24.04._31.png?|}}
    -\\   +
    -клонируем репозитарий +
    -\\   +
    -{{:software:linux_server:tile_map_server_22.04.4_52.png?|}}+
     \\   \\  
     переходим в каталог openstreetmap-carto переходим в каталог openstreetmap-carto
    Строка 344: Строка 357:
     cd openstreetmap-carto cd openstreetmap-carto
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_53.png?|}}+{{:software:linux_server:tile_map_server_24.04._32.png?|}}
     \\   \\  
    -установим подходящую версию компилятора «carto».+установку подходящей версию компилятора «carto» пропустим, т.к. это сделали на первоночальном этапе загрузки необходимых пакетов.
     <code> <code>
     sudo apt install npm sudo apt install npm
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_54.png?|}} +{{:software:linux_server:tile_map_server_24.04._33.png?|}} 
    -\\   +\\    
    -подтверждаем установку "y"  +размер примерно в 600mb, т.ч. перекур
    -\\   +
    -{{:software:linux_server:tile_map_server_22.04.4_55.png?|}} +
    -\\   +
    -размер в 600mb, т.ч. перекур+
     \\   \\  
     +Скомпилируем «carto»
     <code> <code>
     sudo npm install -g carto sudo npm install -g carto
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_56.png?|}}+{{:software:linux_server:tile_map_server_24.04._34.png?|}}
     вывод на экран вывод на экран
    -{{:software:linux_server:tile_map_server_22.04.4_57.png?|}}+{{:software:linux_server:tile_map_server_24.04._35.png?|}} 
     +\\   
     +Тут разработчики просят профинансировать работу с пакетом openstreetmap-carto
     <code> <code>
     npm fund npm fund
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_57_2.png?|}}+{{:software:linux_server:tile_map_server_24.04._36.png?|}} 
     +Далее применяем заплатку, если видим "npm audit fix --force", иначе пропускаем этот раздел и переходим к проверки версии "carto"
     <code> <code>
     npm audit fix --force npm audit fix --force
    Строка 384: Строка 397:
     </code> </code>
     {{:software:linux_server:tile_map_server_22.04.4_57_9.png?|}} {{:software:linux_server:tile_map_server_22.04.4_57_9.png?|}}
     +\\  
     +Проверим версию пакета "carto"
     <code> <code>
     carto -v carto -v
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_58.png?|}}+{{:software:linux_server:tile_map_server_24.04._37.png?|}}
     \\   \\  
     Это должно ответить номером версии, которая должна быть не меньше: 1.2.0 Это должно ответить номером версии, которая должна быть не меньше: 1.2.0
     \\   \\  
    -{{:software:linux_server:tile_map_server_22.04.4_59.png?|}}+{{:software:linux_server:tile_map_server_24.04._38.png?|}}
     \\   \\  
     преобразуем проект carto во что-то, понятное Mapnik: преобразуем проект carto во что-то, понятное Mapnik:
    Строка 397: Строка 412:
     carto project.mml > mapnik.xml carto project.mml > mapnik.xml
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_59_1.png?|}} +{{:software:linux_server:tile_map_server_24.04._39.png?|}} 
    -{{:software:linux_server:tile_map_server_22.04.4_59_2.png?|}}+{{:software:linux_server:tile_map_server_24.04._40.png?|}}
     \\   \\  
    -Теперь у вас есть таблица стиля Mapnik XML в /home/alisa/src/openstreetmap-carto/mapnik.xml.+Теперь у вас есть таблица стиля Mapnik XML в /home/alisa/src/openstreetmap-carto/mapnik.xml.\\   
     +**Примечание:** все предепреждения\\   
     +**Warning: style/admin.mss:22:18 Styles do not match layer selector #admin-low-zoom.**\\   
     +**Warning: style/admin.mss:18:6 Styles do not match layer selector #admin-low-zoom.**\\   
     +Игнорируем
     \\   \\  
    -{{:software:nas:osm_420_51.png|}}+{{:software:linux_server:tile_map_server_24.04._41.png?|}}
      
      
    Строка 412: Строка 431:
     mkdir ~/data mkdir ~/data
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_60.png?|}}+{{:software:linux_server:tile_map_server_24.04._42.png?|}}
     \\   \\  
     и переходим в эту папку и переходим в эту папку
    Строка 418: Строка 437:
     cd ~/data cd ~/data
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_61.png?|}}+{{:software:linux_server:tile_map_server_24.04._43.png?|}}
     \\   \\  
    -на странице загрузки http://download.geofabrik.de/ выбираем нужную нам карту для и копируем с кнопки ее ссылку +на странице загрузки http://download.geofabrik.de/ выбираем нужную нам карту для и копируем с кнопки ее ссылку, процесс не быстрый, идем гулять пол часика с собачкой...
    -<code> +
    -wget http://download.geofabrik.de/russia-latest.osm.pbf +
    -</code> +
    -{{:software:linux_server:tile_map_server_22.04.4_62.png?|}} +
    -\\   +
    -  * карта России размером 3,2Gb, процесс не быстрый, идем гулять пол часика с собачкой... +
    -  * [[:software:linux_server:osmconvert|Слияние карт pbf]] +
    -\\   +
    -{{:software:linux_server:tile_map_server_22.04.4_63.png?|}}+
     \\   \\  
     У кого собачки нет, том может для примера загрузить карту Азербайджана размером 32Mb... У кого собачки нет, том может для примера загрузить карту Азербайджана размером 32Mb...
    Строка 435: Строка 445:
     wget https://download.geofabrik.de/asia/azerbaijan-latest.osm.pbf wget https://download.geofabrik.de/asia/azerbaijan-latest.osm.pbf
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_63_2.png?|}}+{{:software:linux_server:tile_map_server_24.04._44.png?|}}
     Следующая команда вставит загруженные ранее данные OpenStreetMap в базу данных. Этот шаг очень интенсивно использует дисковый ввод-вывод; импорт всей планеты может занять много часов, дней или недель в зависимости от аппаратного обеспечения.  Следующая команда вставит загруженные ранее данные OpenStreetMap в базу данных. Этот шаг очень интенсивно использует дисковый ввод-вывод; импорт всей планеты может занять много часов, дней или недель в зависимости от аппаратного обеспечения. 
     <code> <code>
     cd ~/data cd ~/data
    -osm2pgsql -d gis --create --slim  -G --hstore --tag-transform-script ~/src/openstreetmap-carto/openstreetmap-carto.lua -C 4000 --number-processes 2 -S ~/src/openstreetmap-carto/openstreetmap-carto.style ~/data/russia-latest.osm.pbf+osm2pgsql -d gis --create --slim  -G --hstore --tag-transform-script ~/src/openstreetmap-carto/openstreetmap-carto.lua -C 4000 --number-processes 2 -S ~/src/openstreetmap-carto/openstreetmap-carto.style ~/data/azerbaijan-latest.osm.pbf
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_64.png?|}}+{{:software:linux_server:tile_map_server_24.04._45.png?|}}
     **Обратите внимание на параметр -c (--create) при импорте через osm2pgsql.  **Обратите внимание на параметр -c (--create) при импорте через osm2pgsql. 
     С этим параметром удалится вся существующая информация с таблиц.**  С этим параметром удалится вся существующая информация с таблиц.** 
    Строка 472: Строка 482:
       * <color #22b14c>~/src/openstreetmap-carto/openstreetmap-carto.style ~/data/russia-latest.osm.pbf</color>   * <color #22b14c>~/src/openstreetmap-carto/openstreetmap-carto.style ~/data/russia-latest.osm.pbf</color>
       * Место сохранения и файл данных для загрузки.   * Место сохранения и файл данных для загрузки.
    -Примерный вывод на экран 
     \\   \\  
    -{{:software:linux_server:tile_map_server_22.04.4_65.png?|}} +Команда загрузки должна завершится чем-то вроде «Osm2pgsql в целом занял 34583 секунд». 
    -\\   +{{:software:linux_server:tile_map_server_24.04._46.png?|}} 
    -  * Команда загрузки должна завершится чем-то вроде «Osm2pgsql в целом занял 34583 секунд». +
    -{{:software:nas:osm_420_75.png|}} +
    -  * Пока идет загрузка карты размером 3,2gb (которая по факту заняла 07 часов 23 минуты), перейдем к разделу Шрифты, открыв второе окно подключения к серверу.+
      
      
     =====Создание индексов===== =====Создание индексов=====
       * Начиная с версии v5.3.0 некоторые дополнительные индексы теперь необходимо применять вручную .   * Начиная с версии v5.3.0 некоторые дополнительные индексы теперь необходимо применять вручную .
    -  * переходим в папку openstreetmap-carto+переходим в папку openstreetmap-carto
     <code> <code>
     cd ~/src/openstreetmap-carto/ cd ~/src/openstreetmap-carto/
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_70.png?|}}+{{:software:linux_server:tile_map_server_24.04._47.png?|}}
       * запускаем команду создание индексов   * запускаем команду создание индексов
     <code> <code>
     psql -d gis -f indexes.sql psql -d gis -f indexes.sql
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_71.png?|}}+{{:software:linux_server:tile_map_server_24.04._48.png?|}}
       * (ответ: «CREATE INDEX» 15 раз.)   * (ответ: «CREATE INDEX» 15 раз.)
    -{{:software:linux_server:tile_map_server_22.04.4_72.png?|}} +{{:software:linux_server:tile_map_server_24.04._49.png?|}} 
    -  * заняло примерно 29 минут с ожидаемой нагрузкой+  * заняло примерно несколько минут
      
          
    Строка 519: Строка 526:
     cd ~/src/openstreetmap-carto/ cd ~/src/openstreetmap-carto/
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_80.png?|}}+{{:software:linux_server:tile_map_server_24.04._50.png?|}}
      
     <code> <code>
     scripts/get-external-data.py scripts/get-external-data.py
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_81.png?|}}+{{:software:linux_server:tile_map_server_24.04._51.png?|}}
      
       * Этот процесс включает в себя загрузку и требует некоторого времени — во время работы на экране мало что освещает. На самом деле он загружает таблица водных полигонов и прочее и заполняет каталог «data» ниже «openstreetmap-carto».   * Этот процесс включает в себя загрузку и требует некоторого времени — во время работы на экране мало что освещает. На самом деле он загружает таблица водных полигонов и прочее и заполняет каталог «data» ниже «openstreetmap-carto».
    -  * это занято примерно 47 минут при прогнозируемой загрузке системы + 
    -{{:software:nas:osm_420_82.png?650|}} +{{:software:linux_server:tile_map_server_24.04._52.png?|}}
    -{{:software:linux_server:tile_map_server_22.04.4_83.png?|}}+
     =====Шрифты===== =====Шрифты=====
     переходим в каталог openstreetmap-carto в папке src переходим в каталог openstreetmap-carto в папке src
    Строка 535: Строка 541:
     cd ~/src/openstreetmap-carto/ cd ~/src/openstreetmap-carto/
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_90.png?|}}+{{:software:linux_server:tile_map_server_24.04._53.png?|}}
     \\   \\  
     и собственно загружаем шрифты и собственно загружаем шрифты
    Строка 541: Строка 547:
     scripts/get-fonts.sh scripts/get-fonts.sh
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_91.png?|}}+{{:software:linux_server:tile_map_server_24.04._54.png?|}}
     \\   \\  
     процесс занял 6 минут процесс занял 6 минут
     \\   \\  
    -{{:software:linux_server:tile_map_server_22.04.4_92.png?|}}+{{:software:linux_server:tile_map_server_24.04._55.png?|}}
      
      
     =====Настройка веб-сервера===== =====Настройка веб-сервера=====
     ====визуализация==== ====визуализация====
    -Отрываем с помощью текстового редактора vi файл конфигурации для «render» — «/usr/local/etc/renderd.conf»+Отрываем с помощью текстового редактора nano файл конфигурации для «render» — «sudo nano /etc/renderd.conf»
     <code> <code>
    -sudo vi /usr/local/etc/renderd.conf+sudo nano /etc/renderd.conf
     </code> </code>
    -  * нажимаем **<color #22b14c>i</color>** и редактируем строку **<color #22b14c>XML=/home/renderaccount/src/openstreetmap-carto/mapnik.xml</color>** меняя **<color #7092be>renderaccount</color>** на имя своего пользователя (в нашем случае это - **<color #7092be>alisa</color>**) +{{:software:linux_server:tile_map_server_24.04._56.png?|}} 
    -  * нажимаем последовательно **<color #22b14c>esc</color>** , **<color #22b14c>shift :</color>** , **<color #22b14c>w</color>**  **<color #22b14c>q</color>** , **<color #22b14c>!</color>** для сохранения и выхода из редактора   +Добавляем в конец файла нижеприведенные строки 
    -{{:software:nas:osm_420_62.png|}} +<code> 
    -  * нажимаем **<color #22b14c>enter</color>**+[ajt] 
     +URI=/hot/ 
     +TILEDIR=/var/lib/mod_tile 
     +XML=/home/alisa/src/openstreetmap-carto/mapnik.xml 
     +HOST=localhost 
     +TILESIZE=256 
     +MAXZOOM=20 
     +</code> 
     +{{:software:linux_server:tile_map_server_24.04._57.png?|}} 
     +  * нажимаем последовательно **<color #22b14c>CTRL+0</color>** , **<color #22b14c>ENTER</color>**  для сохранения и  **<color #22b14c>CTRL+X</color>** для выхода из редактора   
     + 
      
      
    Строка 566: Строка 583:
     sudo mkdir /var/lib/mod_tile sudo mkdir /var/lib/mod_tile
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_100.png?|}}+{{:software:linux_server:tile_map_server_24.04._58.png?|}}
     \\   \\  
      
    Строка 573: Строка 590:
     sudo chown alisa /var/lib/mod_tile sudo chown alisa /var/lib/mod_tile
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_101.png?|}}+{{:software:linux_server:tile_map_server_24.04._59.png?|}}
     \\   \\  
      
    -создаем папку renderd+создаем папку renderd, если не создавали ранее
     <code> <code>
     sudo mkdir /var/run/renderd sudo mkdir /var/run/renderd
    Строка 594: Строка 611:
     sudo nano /etc/apache2/conf-available/mod_tile.conf sudo nano /etc/apache2/conf-available/mod_tile.conf
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_104.png?|}}+{{:software:linux_server:tile_map_server_24.04._60.png?|}}
     \\   \\  
      
      
    -  * нажимаем **<color #22b14c>i</color>** и вставляем строку **<color #22b14c>LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so</color>** в тело файла (в нашем случае это пустой файл) +  * вставляем строку **<color #22b14c>LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so</color>** в тело файла (в нашем случае это пустой файл) 
    -  * нажимаем последовательно **<color #22b14c>esc</color>** , **<color #22b14c>shift :</color>** , **<color #22b14c>w</color>**  **<color #22b14c>q</color>** , **<color #22b14c>!</color>** для сохранения и выхода из редактора   +  * нажимаем последовательно **<color #22b14c>CTRL+0</color>** , **<color #22b14c>ENTER</color>**  для сохранения и  **<color #22b14c>CTRL+X</color>** для выхода из редактора   
    -{{:software:linux_server:tile_map_server_22.04.4_105.png?|}} +{{:software:linux_server:tile_map_server_24.04._61.png?|}}
    -  * нажимаем **<color #22b14c>enter</color>**+
      
    -выполняем команду+выполняем команду для включения конфигурации mod_tile.
     <code> <code>
     sudo a2enconf mod_tile sudo a2enconf mod_tile
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_106.png?|}} +{{:software:linux_server:tile_map_server_24.04._62.png?|}} 
    -  * сообщение о необходимости перезапуска Apache «systemctl reload apache2», чтобы активировать новую конфигурацию; мы пока не будем этого делать. +  * выполняем сообщение о необходимости перезапуска Apache «systemctl reload apache2», чтобы активировать новую конфигурацию; 
    -{{:software:linux_server:tile_map_server_22.04.4_107.png?|}} +<code> 
     +sudo systemctl reload apache2 
     +</code> 
     +{{:software:linux_server:tile_map_server_24.04._63.png?|}}
       * сообщаем Apache о «renderd»   * сообщаем Apache о «renderd»
       * открываем в редакторе файл 000-default.conf   * открываем в редакторе файл 000-default.conf
    Строка 616: Строка 634:
     sudo nano /etc/apache2/sites-available/000-default.conf sudo nano /etc/apache2/sites-available/000-default.conf
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_108.png?|}} +{{:software:linux_server:tile_map_server_24.04._64.png?|}} 
    -  * вставляем следующие строки между строками <color #00a2e8>«ServerAdmin»</color> и <color #00a2e8>«DocumentRoot»</color>  +  * вставляем следующин строки в тело файла между строками <color #00a2e8>«ServerAdmin»</color> и <color #00a2e8>«DocumentRoot»</color> 
     <code> <code>
    -LoadTileConfigFile /usr/local/etc/renderd.conf+LoadTileConfigFile /etc/renderd.conf
     ModTileRenderdSocketName /var/run/renderd/renderd.sock ModTileRenderdSocketName /var/run/renderd/renderd.sock
     # Timeout before giving up for a tile to be rendered # Timeout before giving up for a tile to be rendered
    Строка 627: Строка 644:
     ModTileMissingRequestTimeout 30 ModTileMissingRequestTimeout 30
     </code> </code>
    - +  * нажимаем последовательно **<color #22b14c>CTRL+0</color>** , **<color #22b14c>ENTER</color>**  для сохранения и  **<color #22b14c>CTRL+X</color>** для выхода из редактора   
    -  * нажимаем **<color #22b14c>i</color>** и вставляем строки в тело файла между строками <color #00a2e8>«ServerAdmin»</color> и <color #00a2e8>«DocumentRoot»</color>  +{{:software:linux_server:tile_map_server_24.04._65.png?|}} 
    -  * нажимаем последовательно **<color #22b14c>esc</color>** , **<color #22b14c>shift :</color>** , **<color #22b14c>w</color>**  **<color #22b14c>q</color>** , **<color #22b14c>!</color>** для сохранения и выхода из редактора   +\\   
    -{{:software:linux_server:tile_map_server_22.04.4_109.png?|}} +Проверим месторасположение файлов /etc/renderd.conf 
    -  * нажимаем **<color #22b14c>enter</color>** +\\   
    -  * дважды перезагрузите apache:+{{:software:linux_server:tile_map_server_24.04._66.png?|}} 
     +\\   
     +и /var/run/renderd/renderd.sock 
     +\\   
     +{{:software:linux_server:tile_map_server_24.04._67.png?|}} 
     +  * запускаем и перезагрузите apache:
     <code> <code>
     sudo service apache2 start sudo service apache2 start
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_110.png?|}}+{{:software:linux_server:tile_map_server_24.04._68.png?|}}
     <code> <code>
     sudo service apache2 reload sudo service apache2 reload
     </code> </code>
    -{{:software:linux_server:tile_map_server_22.04.4_111.png?|}} +{{:software:linux_server:tile_map_server_24.04._69.png?|}} 
    -  * проверим наш Apache набрав в браузере адрес нашего виртуального сервера (в нашем случае: http://192.168.1.31/) +  * проверим наш Apache набрав в браузере адрес нашего виртуального сервера (в нашем случае: http://192.168.1.64/) 
    -{{:software:nas:osm_420_74.png?650|}}+{{:software:linux_server:tile_map_server_24.04._70.png?|}} 
     +\\   
     +Перечень команд работы с сервисом рендер  
     +  * sudo systemctl start renderd 
     +  * sudo systemctl restart renderd 
     +  * sudo systemctl enable renderd 
     +  * sudo systemctl status renderd 
     +  * sudo systemctl stop renderd 
     +  * sudo systemctl daemon-reload 
     +\\   
     +Перезапустим и провеим статус сервиса 
     +<code> 
     +sudo systemctl daemon-reload 
     +sudo systemctl enable renderd 
     +sudo systemctl restart renderd 
     +sudo systemctl status renderd 
     +</code> 
     +{{:software:linux_server:tile_map_server_24.04._79.png?|}} 
     +<details> 
     +<summary>«Настройки конфигов»</summary> 
     +<code> 
     +sudo nano /etc/renderd.conf 
     +sudo -u 'alisa' renderd -f -c /etc/renderd.conf 
     +sudo renderd -f -c /etc/renderd.conf 
     +sudo renderd -f 
     + 
     + 
     +renderd.service 
     +systemctl start renderd.service 
     +systemctl enable renderd.service 
     +systemctl status renderd.service 
     +systemctl status 
     + 
     +sudo systemctl start renderd 
     +sudo systemctl restart renderd 
     +sudo systemctl enable renderd 
     +sudo systemctl status renderd 
     +sudo systemctl stop renderd 
     +sudo systemctl daemon-reload 
     + 
     +sudo service renderd start 
     + 
     +sudo chown alisa /run/renderd/ -R 
     +sudo chown alisa /var/cache/renderd/tiles/ -R 
     + 
     + 
     + 
     +sudo apt install renderd 
     + 
     + 
     +sudo chown alisa /home/alisa/src/openstreetmap-carto/ -R 
     +sudo chown alisa /home/alisa/src/openstreetmap-carto/mapnik.xml 
     + 
     + 
     + 
     +sudo nano /etc/renderd.conf 
     +[ajt] 
     +URI=/hot/ 
     +TILEDIR=/var/lib/mod_tile 
     +XML=/home/alisa/src/openstreetmap-carto/mapnik.xml 
     +HOST=localhost 
     +TILESIZE=256 
     +MAXZOOM=20 
     + 
     +sudo nano /etc/apache2/conf-available/mod_tile.conf 
     +LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so 
     + 
     +sudo nano /etc/apache2/sites-available/000-default.conf 
     +LoadTileConfigFile /etc/renderd.conf 
     +ModTileRenderdSocketName /var/run/renderd/renderd.sock 
     +# Timeout before giving up for a tile to be rendered 
     +ModTileRequestTimeout 0 
     +# Timeout before giving up for a tile to be rendered that is otherwise missing 
     +ModTileMissingRequestTimeout 30 
     + 
     +sudo nano ~/src/mod_tile/debian/renderd.init 
     + 
     +sudo nano /usr/lib/systemd/system/renderd.service 
     + 
     +[Unit] 
     +Description=Renderd 
     +After=network.target auditd.service 
     + 
     +[Service] 
     +Type=forking 
     +ExecStart=/etc/init.d/renderd start 
     +ExecReload=/etc/init.d/renderd restart 
     +ExecStop=/etc/init.d/renderd stop 
     +Environment=G_MESSAGES_DEBUG=all 
     + 
     +[Install] 
     +WantedBy=multi-user.target 
     + 
     + 
     + 
     +[Unit] 
     +Description=Daemon that renders map tiles using mapnik 
     +Documentation=man:renderd 
     +After=network.target auditd.service 
     + 
     +[Service] 
     +ExecStart=/usr/bin/renderd -f 
     +User=alisa 
     + 
     +[Install] 
     +WantedBy=multi-user.target 
     +</code> 
     +</details>
       * <color #ed1c24>Дальше не продолжаем если не дождались загрузки данных в базу и Создание индексов</color>   * <color #ed1c24>Дальше не продолжаем если не дождались загрузки данных в базу и Создание индексов</color>
     +
     =====Запуск рендера в первый раз===== =====Запуск рендера в первый раз=====
     запустим renderd, чтобы попытаться отрендерить некоторые плитки. Сначала мы запустим его на переднем плане, чтобы видеть любые ошибки по мере их возникновения: запустим renderd, чтобы попытаться отрендерить некоторые плитки. Сначала мы запустим его на переднем плане, чтобы видеть любые ошибки по мере их возникновения:
    Строка 796: Строка 926:
     \\   \\  
     [[https://book51.ru/doku.php?id=notes:nas:osm_synology_vmm|Synology Open Street Map Server]] [[https://book51.ru/doku.php?id=notes:nas:osm_synology_vmm|Synology Open Street Map Server]]
     +\\  
     +https://github.com/openstreetmap/mod_tile/blob/master/docs/build/building_on_ubuntu.md
     +\\  
     +https://switch2osm.org/serving-tiles/manually-building-a-tile-server-ubuntu-24-04-lts/
     +\\  
     +https://www.linuxbabe.com/linux-server/osm-openstreetmap-tile-server-ubuntu-22-04
     +\\  
     +https://ircama.github.io/osm-carto-tutorials/kosmtik-ubuntu-setup/
     +\\  
     +https://www.linuxbabe.com/debian/openstreetmap-osm-tile-server-debian-12-bookworm
     +\\  
     +https://github.com/openstreetmap/mod_tile
     +\\  
      
    software/linux_server/tile_map_server_22.04.4.1722779664.txt.gz · Последнее изменение: 2024/08/04 16:54 — vladpolskiy