XWiki - это популярная вики-платформа с открытым исходным кодом уровня предприятия, написанная на Java. Благодаря расширяемости и простоте использования XWiki используется в различных компаниях в качестве хранилища знаний, общедоступного портала и многого другого.
В этой статье я проведу вас через процесс установки XWiki 9.11.2 на экземпляр сервера Ubuntu 16.04 LTS. OpenJDK 8, Tomcat 8 и MySQL 5.7 будут автоматически установлены как зависимости в процессе установки.
Предпосылки
- Рекомендуется новый экземпляр сервера Vultr Ubuntu 16.04 LTS x64 с минимум 2 ГБ памяти, 4 ГБ или более. Скажите, что его IP-адрес
203.0.113.1
.
- Пользователь Sudo .
- Экземпляр сервера обновлен до последнего стабильного состояния с помощью
apt
.
Настройте репозиторий XWiki LTS APT
Войдите в систему как пользователь sudo, а затем загрузите и настройте репозиторий XTiki LTS (долгосрочная поддержка) APT на своем экземпляре сервера:
cd
wget -q "https://maven.xwiki.org/public.gpg" -O- | sudo apt-key add -
sudo wget "https://maven.xwiki.org/lts/xwiki-lts.list" -P /etc/apt/sources.list.d/
sudo apt update
Примечание. Если вы хотите опробовать последний стабильный выпуск XWiki (но НЕ LTS), вы можете загрузить приведенное ниже репозиторий XWiki APT:
cd
wget -q "https://maven.xwiki.org/public.gpg" -O- | sudo apt-key add -
sudo wget "https://maven.xwiki.org/stable/xwiki-stable.list" -P /etc/apt/sources.list.d/
sudo apt update
Установите все в одном пакете XWiki (включая XWiki LTS 9.11.2, Tomcat 8, MySQL 5.7 и другие.)
При развертывании в производстве XWiki необходимо работать с контейнером Java Servlet и программным обеспечением базы данных. Как гибкая вики-платформа, XWiki официально предоставляет различные варианты интеграции. Вы можете использовать следующую команду, чтобы показать все доступные опции в репозитории XWiki LTS APT:
apt search xwiki
Результат поиска будет выглядеть следующим образом:
xwiki-common/lts 9.11.2 all
xwiki-mysql-common/lts 9.11.2 all
xwiki-pgsql-common/lts 9.11.2 all
xwiki-solr-data/lts 9.11.2 all
xwiki-tomcat7-common/lts 9.11.2 all
xwiki-tomcat7-mysql/lts 9.11.2 all
xwiki-tomcat7-pgsql/lts 9.11.2 all
xwiki-tomcat8-common/lts 9.11.2 all
xwiki-tomcat8-mysql/lts 9.11.2 all
xwiki-tomcat8-pgsql/lts 9.11.2 all
Если вы хотите использовать XWiki с наиболее распространенными зависимостями, вы можете установить все необходимые компоненты в одну команду следующим образом:
sudo apt install xwiki-tomcat8-mysql/lts -y
В процессе установки вам будет предложено установить новый пароль для пользователя root MySQL несколько раз. Просто оставьте поле пароля пустым и нажмите, Enter
чтобы пропустить этот шаг сейчас. Мы займемся этой проблемой позже, пока будем защищать установку MySQL.
Когда вас спросят, хотите ли вы Configure database for xwiki with dbconfig-common?
, выберите, <Yes>
а затем нажмите ENTER.
Когда вас попросят предоставить MySQL application password for xwiki
, вы можете либо ввести конкретный пароль приложения MySQL, либо оставить поле пароля пустым. Последний скажет XWiki использовать случайный пароль приложения MySQL.
Установив XWiki и все необходимые зависимости, обеспечьте установку MySQL:
sudo /usr/bin/mysql_secure_installation
В процессе работы программа задаст вам несколько вопросов. Ответьте им, как показано ниже:
- Вы хотите установить плагин VALIDATE PASSWORD? Y
- Пожалуйста, введите 0 = НИЗКИЙ, 1 = СРЕДНИЙ и 2 = СИЛЬНЫЙ: 2
- Новый пароль:
a-strong-MySQL-root-password
- Повторно введите новый пароль:
a-strong-MySQL-root-password
- Вы хотите продолжить с предоставленным паролем? Y
- Удалить анонимных пользователей? Y
- Запретить root-вход удаленно? Y
- Удалить тестовую базу данных и получить к ней доступ? Y
- Перезагрузить таблицы привилегий сейчас? Y
Повысить безопасность XWiki, изменив конфигурационный файл XWiki.
Используйте редактор vi, чтобы открыть файл конфигурации XWiki:
sudo vi /etc/xwiki/xwiki.cfg
Найдите две строки, показанные ниже:
xwiki.authentication.validationKey=totototototototototototototototo
xwiki.authentication.encryptionKey=titititititititititititititititi
Замените значения обоих параметров двумя разными случайными строками и просто убедитесь, что длина каждой строки такая же, как и у другой, например:
xwiki.authentication.validationKey=f0130dfa6fc841e920d5e1056184c03e
xwiki.authentication.encryptionKey=z84kf92ko073tgjdnvkdfmms91qa0ke4
Сохранить и выйти:
:wq!
Квота памяти по умолчанию слишком мала для запуска Tomcat 8 и XWiki внутри. Чтобы правильно запустить экземпляр XWiki в Tomcat 8, необходимо увеличить квоту памяти по умолчанию следующим образом.
sudo cp /etc/default/tomcat8 /etc/default/tomcat8.bak
sudo vi /etc/default/tomcat8
Найдите строку:
JAVA_OPTS="-Djava.awt.headless=true -Xmx128m -XX:+UseConcMarkSweepGC"
Измените строку, как показано ниже:
JAVA_OPTS="-Djava.awt.headless=true -Xmx1024m"
Примечание: 1024M памяти - это только минимальная квота для запуска небольшого или среднего сайта XWiki. Возможно, вам придется внести изменения в эту строку в соответствии с вашими конкретными требованиями.
Сохранить и выйти:
:wq!
Перезапустите Tomcat 8, чтобы все ваши изменения вступили в силу:
sudo systemctl restart tomcat8.service
Измените правила брандмауэра UFW, чтобы разрешить веб-доступ через порт 8080
:
sudo ufw allow 8080
sudo ufw enable
Инициализируйте XWiki в Distribution Wizard
веб-интерфейсе ""
На данный момент у вас есть настроенный, но пустой сайт XWiki. Чтобы заполнить контент, вам необходимо выполнить несколько последующих задач, включая создание пользователя-администратора и установку версии и необходимых расширений для этой вики в исходном веб-интерфейсе XWiki с именем " Distribution Wizard
".
Укажите свой любимый веб-браузер http://203.0.113.1:8080/xwiki
, и вы автоматически попадете в " Distribution Wizard
" веб-интерфе��с. Нажмите кнопку « Continue
», чтобы начать работу мастера.
На Step 1 - Admin user
странице " " вам необходимо ввести учетные данные администратора, например:
FIRST NAME: `John`
LAST NAME: `Doe`
USERNAME (Required): `johndoe`
PASSWORD (Required): `yourpassword`
CONFIRM PASSWORD (Required): `yourpassword`
EMAIL ADDRESS: `[email protected]`
Заполнив все необходимые поля, нажмите кнопку « Register and login
», чтобы продолжить.
На следующей странице , которая показывает « You are connected with user John Doe.
», нажмите на « Continue
кнопку» , чтобы создать пользователя с правами администратора , John Doe
чье имя пользователя является johndoe
и двигаться дальше.
На Step 2 - Flavor
странице " " нажмите на область " XWiki Standard Flavor 9.11.2
", чтобы выделить этот аромат, а затем нажмите кнопку " Install this flavor
", чтобы продолжить.
На следующей странице с подробной информацией " XWiki Standard Flavor 9.11.2
" нажмите кнопку " Install
", чтобы выполнить установку.
После установки версии все необходимые расширения будут перечислены на странице, нажмите кнопку « Continue
», чтобы установить их все.
Установив вкус и все необходимые расширения, нажмите кнопку « Continue
» в правом нижнем углу, чтобы продолжить.
На Step 4 - Report
странице " " вы можете просмотреть все созданные страницы.
При необходимости вы можете удалить любые непопулярные страницы, нажав соответствующую красную X
кнопку.
Наконец, нажмите кнопку « Continue
», чтобы завершить « Distribution Wizard
». Вы попадете на панель управления XWiki в качестве пользователя-администратора, который вы настроили ранее.
(Необязательно) Сократите URL сайта XWiki
По умолчанию, поскольку Tomcat может одновременно обслуживать несколько приложений, вам необходимо получить доступ к своему сайту XWiki по URL-адресу http://203.0.113.1:8080/xwiki
. Однако, если XWiki - единственное приложение, работающее в Tomcat, и вы хотите сократить URL-адрес сайта XWiki, удалив /xwiki
суффикс, вам следует изменить три файла конфигурации XWiki следующим образом.
Модификация файла 1:
cd /etc/tomcat8/Catalina/localhost/
sudo cp xwiki.xml ROOT.xml
sudo mv xwiki.xml xwiki.xml.bak
Модификация файла 2:
cd /etc/xwiki
sudo cp xwiki-tomcat8.xml xwiki-tomcat8.xml.bak
sudo vi xwiki-tomcat8.xml
Найдите строку:
<Context path="/xwiki" docBase="/usr/lib/xwiki" privileged="true" crossContext="true">
Измените значение параметра пути:
<Context path="/" docBase="/usr/lib/xwiki" privileged="true" crossContext="true">
Сохранить и выйти:
:wq!
Модификация файла 3:
cd /etc/xwiki
sudo cp xwiki.cfg xwiki.cfg.bak
sudo vi xwiki.cfg
Найдите строку:
# xwiki.webapppath=
Раскомментируйте это:
xwiki.webapppath=
Сохранить и выйти:
:wq!
Наконец, перезапустите Tomcat 8, чтобы применить все ваши модификации:
sudo systemctl restart tomcat8.service
Отныне вы будете посещать свой сайт XWiki http://203.0.113.1:8080/
напрямую.
(Необязательно) Настройте обратный прокси-сервер Nginx
По умолчанию Tomcat 8 работает с портом 8080
, и вы можете посещать сайт XWiki только с того же порта. Если вы хотите облегчить доступ посетителей, удалив часть номера порта, вы можете установить Nginx в качестве обратного прокси-сервера между XWiki и посетителями.
Сначала установите Nginx, используя apt:
sudo apt install nginx -y
Затем настройте Nginx в качестве обратного прокси-сервера, изменив настройки сайта по умолчанию:
cd /etc/nginx/sites-available
sudo mv default default.bak
sudo vi default
Заполните файл следующим текстом:
server {
listen 0.0.0.0:80;
proxy_request_buffering off;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
Сохранить и выйти:
:wq!
Запустите службу Nginx и настройте ее на автоматический запуск при запуске системы:
sudo systemctl restart nginx.service
sudo systemctl enable nginx.service
Наконец, измените правила брандмауэра UFW соответствующим образом:
sudo ufw allow 80
sudo ufw deny 8080
sudo ufw reload
Отныне посетителям вашего сайта XWiki больше не нужно указывать номер порта. Они должны непосредственно посетить http://203.0.113.1/
.