Этот сайт начал работу на этой системе документирования и логично было бы показать, как она разворачивается.
Важно понимать какое окружение будет использоваться при разворачивании. Данная инструкция актуальна для хостинга с Ubuntu 22 и FastPanel с Nginx на фронте.
На сайте разработчиков указаны необходимые зависимости
Node.js 12.x or later
PostgreSQL, MySQL, MariaDB, MSSQL or SQLite3
Начнем с установки зависимостей.
БД поставим PostgreSQL, так как её же будем использовать и для других проектов.
Я ставлю совсем не свежую версию 14, так как она используется в иных моих проектах разработки
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
как раз получаем предупреждение, что версия больше не поддерживается
Обновляем список пакетов:
apt update
и устанавливаем:
apt install -y nodejs
Теперь установим PostgreSQL
apt install postgresql postgresql-client postgresql-client-common postgresql-common postgresql-server-dev-all libpq-dev postgis postgresql-contrib -y
сразу ставлю библиотеки для разработки и все связанные пакеты.
Создаем пользователя и базы данных для wiki.js
входим в пользователя БД
sudo -i -u postgres
и непосредственно создаём:
psql -c "CREATE ROLE wikiuser WITH LOGIN PASSWORD 'wikipassword'";
psql -c "CREATE DATABASE wikidatabase WITH OWNER wikiuser";
выходим из пользователя postgres
exit
переходим в папку сайта
cd /var/www/markutsin_ru_usr/data/www/markutsin.ru/
скачиваем
wget https://github.com/Requarks/wiki/releases/latest/download/wiki-js.tar.gz
распаковываем
mkdir wiki
tar xzf wiki-js.tar.gz -C ./wiki
cd ./wiki
Создаем конфигурационный файл
mv config.sample.yml config.yml
вносим информацию о подключении к БД
nano config.yml
db: type: postgres # PostgreSQL / MySQL / MariaDB / MS SQL Server only: host: localhost port: 5432 user: wikiuser pass: wikipassword db: wikidatabase ssl: false
и проверяем, что запускается
node server
Открываем в веб браузере по адресу нашего сервера с указанием порта по умолчанию 3000, задаем пост установочные параметры.
Сделаем wiki как основной сайт. Так как знаем, что на фронте Nginx, то открываем конфигурацию (пока вручную, но если слетит, то потом посмотрим где это в FastPanel):
nano /etc/nginx/fastpanel2-available/markutsin_ru/markutsin.ru.conf
server { server_name markutsin.ru www.markutsin.ru ; listen 79.133.181.118:80; charset utf-8; gzip on; gzip_proxied expired no-cache no-store private auth; gzip_types text/css text/xml application/javascript text/plain application/json image/svg+xml image/x-icon; gzip_comp_level 1; set $root_path /var/www/markutsin_ru_usr/data/www/markutsin.ru; root $root_path; disable_symlinks if_not_owner from=$root_path; location / { proxy_pass http://127.0.0.1:3000; # proxy_redirect http://127.0.0.1:3000/ /; include /etc/nginx/proxy_params; } location ~* ^.+\.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpeg|avi|zip|gz|bz2|rar|swf|ico|7z|doc|docx|map|ogg|otf|pdf|tff|tif|txt|wav|webp|woff|woff2|xls|xlsx|xml)$ { try_files $uri $uri/ @fallback; } location @fallback { proxy_pass http://127.0.0.1:3000; # proxy_redirect http://127.0.0.1:3000/ /; include /etc/nginx/proxy_params; } include "/etc/nginx/fastpanel2-sites/markutsin_ru_usr/markutsin.ru.includes"; include /etc/nginx/fastpanel2-includes/*.conf; error_log /var/www/markutsin_ru_usr/data/logs/markutsin.ru-frontend.error.log; access_log /var/www/markutsin_ru_usr/data/logs/markutsin.ru-frontend.access.log; }
Везде в location я заменил порт на 3000 и закомментировал proxy_redirect
Проверяю конфигурацию и перезапускаю nginx
root@markutsin:/etc/nginx# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
root@markutsin:/etc/nginx# nginx -s reload
После чего на wiki можно заходить по адресу сайта без указания порта http://markutsin.ru
Нажмем на кнопку Create home page. вводим
данные
В системе документирования есть несколько способов создания страницы, которые мы разберем позже. Сейчас создадим через Visual Editor.
По умолчанию всё на английском языке. Исправим это. Перейдем в раздел Administration - шестеренка в верхнем правом углу.
Выбираем пункт меню Locale
Среди списка локализаций находим русский язык и нажимам облачко справа, что бы добавить его в систему.
Далее в поле Locale Setting выбираем русский язык, а так же чуть ниже выбираем многоязыковую поддержку.
Справа вверху нажимаем кнопку Apply, что бы изменения применились.
Теперь заменим локализацию нашей ранее созданной домашней страницы, что бы она отображалась в текущих настройках.
А так же заменим заголовки в системе документирования:
На этом пока всё. Добавим систему документирования Wiki.js в автозагрузку, как сервис в отдельной инструкции.