Установка Wiki.js · 8 min read · Nov 13, 2025
Как установить Wiki.js с обратным прокси Apache2 на Ubuntu 22.04

Wiki.js — это бесплатное и открытое программное обеспечение для вики, основанное на Node.js, Git и Markdown. Оно выпущено под лицензией AGPL-v3 и разработано для производительности и экономии системных ресурсов. Wiki.js — это мощное программное обеспечение для вики, которое можно установить где угодно в вашей системе; вы можете установить его на свою операционную систему или использовать облачные сервисы, такие как Heroku, а также развернуть Wiki.js в контейнерных средах, таких как Docker и Kubernetes.
Wiki.js совместим с базой данных PostgreSQL и предоставляет более 50 интеграций для дополнительной аутентификации, систем логирования, поисковых систем, рендеринга и хранения. Это мощное программное обеспечение для вики, построенное на красивых и интуитивно понятных интерфейсах для панели управления и страниц. Это полностью настраиваемое программное обеспечение для вики для документирования вашего технологического стека.
В этом руководстве вы установите и настроите Wiki.js на сервере Ubuntu 22.04, используя PostgreSQL в качестве базы данных по умолчанию и Apache2 в качестве обратного прокси. Кроме того, у вас будет безопасное HTTPS/SSL соединение на вашей установке Wiki.js. Когда вы закончите, у вас будет полностью функциональная и защищенная Wiki.js на вашей системе Ubuntu.
Предварительные требования
Чтобы завершить это руководство, вам сначала понадобятся следующие требования:
- Сервер Ubuntu 22.04.
- Пользователь, не являющийся root, с правами администратора.
- Доменное имя, указывающее на IP-адрес вашего сервера Ubuntu.
Установка Node.js
Перед установкой Wiki.js вам необходимо установить зависимости, которые требуются Wiki.js.
Wiki.js — это программное обеспечение для вики, в основном написанное на JavaScript, поэтому на этом первом этапе вам нужно установить среду выполнения JavaScript Node.js. Стандартный репозиторий Ubuntu предоставляет пакет Node.js, но для этого руководства вы будете использовать репозиторий Nodesource для установки Node.js.
Запустите команду curl ниже, чтобы добавить репозиторий Nodesource в вашу систему Ubuntu. На момент написания этой статьи Wiki.js требовал как минимум Node.js v8 и выше. И для этого руководства вы установите LTS версию Node.js v16.
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
Теперь вы можете установить пакет Node.js, используя команду apt ниже.
sudo apt install nodejs
После завершения установки проверьте и подтвердите версию Node.js, используя следующую команду. Вы должны увидеть версию Node.js v16 LTS на экране вашего терминала.
node --version
npm --version
Установка базы данных PostgreSQL
Стандартная версия Wiki.js поддерживает несколько СУБД, таких как PostgreSQL, MySQL/MariaDB и SQLite (по умолчанию), но рекомендуемой базой данных для продакшена является PostgreSQL. Вы установите пакет PostgreSQL на систему Ubuntu, затем создадите базу данных и пользователя для Wiki.js.
Чтобы начать, выполните следующую команду apt для установки базы данных PostgreSQL на вашем сервере. Введите Y, чтобы подтвердить установку, и нажмите ENTER, чтобы продолжить, и установка начнется.
sudo apt install postgresql postgresql-common
Когда установка завершится, выполните следующую команду systemctl, чтобы проверить и подтвердить службу PostgreSQL. И вы должны увидеть, что служба PostgreSQL включена, что означает, что она автоматически запустится при загрузке системы. А текущее состояние службы PostgreSQL — “ Активно “.
sudo systemctl is-enabled postgresql
sudo systemctl status postgresqlВойдите в консоль PostgreSQL, используя команду ниже, чтобы создать базу данных и пользователя PostgreSQL.
sudo -u postgres psqlВыполните следующую команду из вашей консоли PostgreSQL, чтобы создать новую базу данных и пользователя для Wiki.js. В этом примере мы создаем базу данных “ wikijs “ и пользователя “ wiki “ с паролем “ wikijspassword “.
CREATE DATABASE wikijs;
CREATE USER wiki WITH ENCRYPTED PASSWORD 'wikijspassword';
GRANT ALL PRIVILEGES ON DATABASE wikijs TO wiki;Теперь вы можете использовать “ Ctrl+d “ для выхода из консоли PostgreSQL или просто использовать команду “ \q “ для выхода.

Установка Wiki.js
Теперь вы установите Wiki.js вручную на вашу систему Ubuntu. В этом руководстве вы создадите системного пользователя для Wiki.js, загрузите исходный код Wiki.js, настроите Wiki.js с базой данных PostgreSQL, и, наконец, вы запустите Wiki.js как службу systemd.
Сначала выполните следующую команду, чтобы создать нового пользователя для Wiki.js. В этом примере мы создаем нового системного пользователя с именем “ wiki “ с домашним каталогом по умолчанию “ /opt/wikijs “, и поскольку это системный пользователь, мы отключаем доступ к оболочке.
sudo useradd -r -d /opt/wikijs -s /usr/sbin/nologin wikiТеперь загрузите исходный код Wiki.js, используя команду wget ниже.
wget https://github.com/Requarks/wiki/releases/latest/download/wiki-js.tar.gzКогда загрузка завершится, создайте новый каталог “ /opt/wikijs “ и извлеките исходный код Wiki.js в него. Вы должны увидеть, что исходный код Wiki.js доступен в каталоге установки “/opt/wikijs “.
mkdir -p /opt/wikijs
tar xzf wiki-js.tar.gz -C /opt/wikijsЧтобы настроить Wiki.js с базой данных PostgreSQL, вы скопируете файл образца конфигурации по умолчанию “ config.sample.yml “ и измените/отредактируете его с помощью вашего текстового редактора.
Выполните следующую команду, чтобы скопировать пример файла конфигурации Wiki.js в “ /opt/wikijs/config.yml “. Затем отредактируйте новый файл “ /opt/wikijs/config.yml “ с помощью редактора nano.
cp /opt/wikijs/config.sample.yml /opt/wikijs/config.yml
nano /opt/wikijs/config.ymlИзмените конфигурацию по умолчанию следующим образом.
В этом примере мы будем запускать Wiki.js на стандартном TCP порту “ 3000 “. Обязательно измените имя базы данных PostgreSQL, пользователя и пароль. В опции “ bindIP “ измените на localhost или “ 127.0.0.1 “. Для конфигурации логов Wiki.js мы будем использовать уровень по умолчанию “ info “ с форматом “ json “.
# стандартный порт, на котором будет работать wikijs
port: 3000
# данные базы данных PostgreSQL
db:
type: postgres
host: localhost
port: 5432
user: wiki
pass: wikijspassword
db: wikijs
ssl: false
# привязать wikijs только к localhost
bindIP: 127.0.0.1
# настройка логов и формата
loglevel: info
logFormat: jsonСохраните и закройте файл, когда закончите.

Теперь выполните команду chown ниже, чтобы изменить владельца каталога установки Wiki.js “/opt/wikijs “ на пользователя “wiki “.
sudo chown -R wiki:wiki /opt/wikijsВ этом примере мы будем запускать Wiki.js как службу systemd. Поэтому вам нужно создать новый файл службы systemd для Wiki.js.
Выполните следующую команду, чтобы создать новый файл службы systemd “/etc/systemd/system/wikijs.service “.
sudo nano /etc/systemd/system/wikijs.serviceДобавьте следующую конфигурацию в файл.
[Unit]
Description=Wiki.js
After=network.target postgresql.service
[Service]
Type=simple
ExecStart=/usr/bin/node server
Restart=always
User=wiki
Environment=NODE_ENV=production
WorkingDirectory=/opt/wikijs
[Install]
WantedBy=multi-user.targetСохраните и закройте файл, когда закончите.
Затем выполните следующую команду, чтобы перезагрузить системный менеджер и применить новый файл службы “ wikijs.service “
sudo systemctl daemon-reloadТеперь вы можете запустить и включить службу “ wikijs “ с помощью следующей команды.
sudo systemctl start wikijs
sudo systemctl enable wikijsНаконец, проверьте и подтвердите службу “ wikijs “ с помощью следующей команды. Вы теперь должны увидеть, что служба “ wikijs “ работает на стандартном TCP порту “ 3000 “ с PostgreSQL в качестве базы данных по умолчанию.
sudo systemctl status wikijs
Настройка Apache2 как обратного прокси
В этом примере Wiki.js теперь работает на TCP порту “3000”. Чтобы открыть доступ к внешним сетям или интернету, лучше настроить обратный прокси перед Wiki.js и применить HTTPS/SSL сверху, чтобы защитить любые учетные данные и вход в систему. Вы также будете использовать Apache2 в качестве обратного прокси для Wiki.js.
Выполните команду apt ниже, чтобы установить пакет Apache2. Введите Y, чтобы подтвердить установку, и нажмите ENTER, чтобы продолжить, и установка начнется.
sudo apt install apache2
После завершения установки выполните команду “ufw” ниже, чтобы открыть порты HTTP и HTTPS на вашей системе ubuntu. Затем проверьте список правил UFW.
sudo ufw allow "Apache Full"
sudo ufw status
Затем включите некоторые модули Apache2, используя следующую команду. Вы будете использовать эти модули для настройки обратного прокси Apache2.
sudo a2enmod proxy proxy_http ssl remoteip http2
Теперь создайте новую конфигурацию виртуального хоста Apache2 “ /etc/apache2/sites-available/wikijs.conf “ с помощью следующей команды.
sudo nano /etc/apache2/sites-available/wikijs.confДобавьте следующую конфигурацию в файл. В этом примере мы будем использовать домен “ wiki.howtoforge.local “ для установки Wiki.js и SSL-сертификаты от letsencrypt. Обязательно измените имя домена и путь к SSL-сертификатам.
ServerName wiki.howtoforge.local
# Комментарий, чтобы предотвратить перенаправление HTTP на HTTPS
Redirect permanent / https://wiki.howtoforge.local
ErrorLog /var/log/apache2/wiki.howtoforge.local-error.log
CustomLog /var/log/apache2/wiki.howtoforge.local-access.log combined
ServerName wiki.howtoforge.local
ProxyPreserveHost On
ProxyPass "/" "http://127.0.0.1:3000/"
ProxyPassReverse "/" "http://127.0.0.1:3000/"
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/wiki.howtoforge.local/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/wiki.howtoforge.local/privkey.pem
Protocols h2 http/1.1
# Включить только сильные шифры шифрования и предпочитать версии с пересылаемой секретностью
SSLCipherSuite HIGH:RC4-SHA:AES128-SHA:!aNULL:!MD5
SSLHonorCipherOrder on
# Отключить небезопасные версии SSL и TLS
SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
ErrorLog /var/log/apache2/wiki.howtoforge.local-error.log
CustomLog /var/log/apache2/wiki.howtoforge.local-access.log combined
Сохраните и закройте файл, когда закончите.
Затем активируйте файл виртуального хоста ‘ wikijs.conf “ с помощью следующей команды.
sudo a2ensite wikijs.confПроверьте и подтвердите конфигурацию Aache2 с помощью следующей команды. Если вы получите сообщение, такое как “ Синтаксис ОК “, это означает, что конфигурация Apache2 готова. Затем перезапустите службу Apache2, чтобы применить новые изменения.
sudo apachectl configtest
sudo systemctl restart apache2
Настройка установки Wiki.js
Откройте веб-браузер и посетите доменное имя вашей установки Wiki.js (т.е: https://wiki.howtoforge.local/).
Введите новый адрес электронной почты администратора, пароль и URL-адрес сайта для вашей установки Wiki.js. Затем нажмите кнопку “ УСТАНОВИТЬ “, чтобы начать установку.

После завершения установки вы увидите страницу входа в Wiki.js. введите адрес электронной почты администратора и пароль и нажмите “ Войти “.

Теперь вы увидите приветственное сообщение от Wiki.js. Нажмите кнопку “ СОЗДАТЬ ГЛАВНУЮ СТРАНИЦУ “, чтобы настроить страницу индекса по умолчанию для вашей Wiki.js.

Выберите редактор, который хотите использовать. В этом примере мы будем использовать редактор Markdown.

Введите заголовок, описание и другие данные. Затем нажмите “ ОК “.

Введите детали страницы индекса для вашей Wiki.js и нажмите “ СОЗДАТЬ “, чтобы подтвердить.

И вы должны увидеть главную страницу Wiki.js, которую вы только что создали.

Чтобы получить доступ к панели управления Wiki.js, нажмите на значок настроек шестеренки в верхнем левом углу. Вы должны увидеть панель управления Wiki.js ниже.

Заключение
В этом учебном пособии вы настроили Wiki.js на базе данных PostgreSQL и обратном прокси Apache2, работающем на последнем сервере Ubuntu 22.04. Вы также защитили свою Wiki.js с помощью брандмауэра UFW и включили SSL/HTTPS на обратном прокси Apache. В конце вы также настроили главную страницу или индекс по умолчанию для вашей установки Wiki.js.
Вы можете создавать дополнительный контент и настраивать категории для вашего проекта Wiki. Вы также можете добавить некоторые модули в вашу Wiki.js, чтобы расширить ее функциональность или настроить новые темы для Wiki.js.
Get new posts in your inbox
No spam. Unsubscribe anytime.