Проект с [[https://github.com/YGGverse/bdoku|открытым кодом]] для организации зеркала [[https://www.dokuwiki.org|DokuWiki]] для протокола [[:gemini_protocol|Gemini]].
Написан на языке PHP 8, в качестве основы использует:
* [[https://github.com/YGGverse/gemini-php|gemini-php]] - для конвертации базы данных и безопасной работы с файловой системой
* [[https://github.com/YGGverse/titan-II|titan-II]] - форк сервера с поддержкой IPv6
* [[https://github.com/YGGverse/cache-php|cache-php]] - оболочка для кеширования скомпилированных страниц посредством Memcached
* [[https://github.com/manticoresoftware|manticore]] - для полнотекстового поиска
===== Примеры =====
β-Doku изначально создан для организации зеркала этого сайта:
* %%gemini://[301:23b4:991a:634d::b]%%
* %%gemini://betahowto.ygg%% - алиас
* %%gemini://betahowto.duckdns.org%% - алиас в Интернет
===== Установка =====
Проект находится в процессе разработки, актуальная инструкция доступна в [[https://github.com/YGGverse/bdoku/blob/main/README.md|README]]
===== Синхронизация =====
Ресурс "betahowto" для всех инстансов использует автоматический [[wiki:wiki_backup|дамп]] в качестве источника.
Также, по совместительству отправляет историю правок в репозиторий [[http://[316:c51a:62a3:8b9::4]/YGGverse/howto-db|howto-db]], откуда можно также получить актуальную версию базы данных:
* при использовании базы из репозитория, следует учитывать наличие директории .git в корне (в прочем, корневая директория не используется, а скрытые файлы игнорируются индексатором gemini-php)
Обновление осуществляется скриптом по расписанию crontab, где общая директория "data" расположена в корне "howto-db" (на которую ведут символические ссылки всех хостов):