Wikibase/Docker/ru
Обзор
Это пошаговое руководство по установке комплекта Wikibase на свой компьютер с помощью Docker.
Наши образы Docker содержат полную установку MediaWiki и Wikibase, а процесс установки настраивается в соответствии с вашими потребностями.
Подготовка окружения
Выполните все эти шаги перед началом установки Wikibase.
Установите Docker
На компьютере, где вы хотите запустить Викибазу, сначала устанавливайте Docker.
Если вам нужна помощь в установке помимо собственных инструкций Docker, вы можете ознакомиться с этими учебниками третьих лиц для Linux, Mac и Windows.
Проверка файлов
Посмотрите на хранилище трубопроводов Викибазы из GitHub, чтобы получить примерные файлы конфигурации. Последнее выпущение - wmde.20
, так что выполните следующие команды:
git clone https://github.com/wmde/wikibase-release-pipeline cd wikibase-release-pipeline git checkout tags/wmde.20
Подготовка файлов
Создайте новый "каталог запуска", из которого вы будете запускать Docker. Имейте в виду, что имя этого каталога будет появляться в ваших контейнерных именах. For this example we will create the directory "wbdocker".
mkdir $HOME/wbdocker cp -r example/* $HOME/wbdocker cd $HOME/wbdocker mv template.env .env
Настройка окружения
Файл .env
содержит переменные окружающей среды, которые регулируют установку Викибазы. Вам нужно будет отредактировать этот файл и изменить информацию в определенных строках следующим образом.
Настройка MediaWiki
- MW_ADMIN_NAME
- MW_ADMIN_PASS
- MW_ADMIN_EMAIL
Эти значения определяют имя пользователя, пароль и адрес электронной почты административного пользователя в новой установке MediaWiki. Вы будете использовать это имя пользователя и пароль для первого входа в веб-интерфейс вашего нового экземпляра; адрес электронной почты, который вы введете здесь, также позволит вам сбросить пароль при необходимости. The password must be at least 10 characters and must not appear in the list of CommonPasswords .
Этот секретный ключ должен быть уникальным; MediaWiki использует его для нескольких целей (например, управление сессиями, резервный источник криптографической энтропии). Более подробную информацию см. по ссылке. Чтобы сгенерировать случайную строку для использования в этом файле:
echo -n "MW_SECRET_KEY=" tr -dc 'A-Za-z0-9@#%^+_-' </dev/urandom | head -c 64 ; echo ''
Настройка базы данных
- DB_NAME
- DB_USER
- DB_PASS
Эти значения контролируют название базы данных, которую MediaWiki будет использовать, а также имя пользователя и пароль базы данных.
На минимальный минимум, изменить DB_PASS
:
echo -n "DB_PASS=" tr -dc 'A-Za-z0-9@#%^+_-' </dev/urandom | head -c 32 ; echo ''
Настройка Wikibase
- WIKIBASE_PINGBACK=false
По умолчанию функция pingback в Wikibase отключена.
Пожалуйста, подумайте о включении этой функции (которая отправляет только анонимные данные) путем изменения false
на true
.
Включение этой функции значительно улучшает понимание Wikimedia Deutschland того, как используется Wikibase, и помогает нам принимать более обоснованные решения относительно дорожной карты развития. For more information, read our pingback documentation topic.
Имена узлов
WIKIBASE_HOST=wikibase.svc
WIKIBASE_PORT=80
WDQS_FRONTEND_HOST=wdqs-frontend.svc
WDQS_FRONTEND_PORT=8834
QUICKSTATEMENTS_HOST=quickstatements.svc
QUICKSTATEMENTS_PORT=8840
MW_ELASTIC_HOST=elasticsearch.svc
MW_ELASTIC_PORT=9200
Эти строки определяют имя узла и порт вашей Wikibase (то, что вы введете в адресную строку браузера) и, по желанию, внешних служб для расширенной установки.
Sandbox users (those who want only a locally accessible setup on a single computer) can and should leave this section untouched.
However, if you plan to use any of the above external services outside of a self-contained Docker setup, you need to set WIKIBASE_HOST
, WDQS_FRONTEND_HOST
, QUICKSTATEMENTS_HOST
and/or MW_ELASTIC_HOST
to publicly accessible hostnames -- that is, hostnames that can be resolved in DNS -- or IP addresses.
The latter might be the right choice if you're running this on a local network.
localhost
in any setup that requires separate services to talk to one another.MAX_JOBS
You can specify that the job runner should run more jobs between restarts by setting MAX_JOBS
higher than its default value of 1.
See below for more information on the job runner.
Установка и запуск Wikibase
Now that you've installed all the needed software and customised your environment file, you have one more choice: whether to perform a minimal install (just MediaWiki, a backing MySQL database and Wikibase) or an extended install (MediaWiki, database, Wikibase, WDQS, Elasticsearch, QuickStatements).
Минимальная установка
For a minimal install, in the launch directory where you copied and modified your files, simply run:
docker-compose up -d
Расширенная установка
For an extended install, in the launch directory where you copied and modified your files, run this extended command:
docker-compose -f docker-compose.yml -f docker-compose.extra.yml up -d
On some systems you will get an error message Unknown shorthand flag: 'f' in -f. In this case you need to install the docker-compose package through your package manager and run the command again.
Опции
If you need to run multiple job runners, you can add the following option (with X being the number of job runners to run) onto your docker compose
command, as in this example:
docker-compose up -d --scale wikibase_jobrunner=X
Запуск и работа
You will now have at least two Docker containers running.
To see your running containers, run docker compose ps
.
The following example output is from an extended install:
$ docker ps NAME COMMAND SERVICE STATUS PORTS wbdocker-elasticsearch-1 "/usr/local/bin/dock…" elasticsearch running 9300/tcp wbdocker-mysql-1 "docker-entrypoint.s…" mysql running 3306/tcp wbdocker-quickstatements-1 "/bin/bash /entrypoi…" quickstatements running 0.0.0.0:8840->80/tcp, :::8840->80/tcp wbdocker-wdqs-1 "/entrypoint.sh /run…" wdqs running 9999/tcp wbdocker-wdqs-frontend-1 "/entrypoint.sh ngin…" wdqs-frontend running 0.0.0.0:8834->80/tcp, :::8834->80/tcp wbdocker-wdqs-proxy-1 "/bin/sh -c \"/entryp…" wdqs-proxy running 80/tcp wbdocker-wdqs-updater-1 "/entrypoint.sh /run…" wdqs-updater running wbdocker-wikibase-1 "/bin/bash /entrypoi…" wikibase running 0.0.0.0:80->80/tcp, :::80->80/tcp wbdocker-wikibase_jobrunner-1 "/bin/bash /jobrunne…" wikibase_jobrunner running 80/tcp
For some more helpful Wikibase-oriented Docker commands, check out the Docker tooling section of our maintenance documentation.
Log into your new Wikibase by navigating to your local machine's web server.
Очередь задач
Пример docker-compose.yml
устанавливает специальный рабочий режим, который перезагружается после каждой работы, чтобы обеспечить, что изменения в конфигурации будут восприняты как можно быстрее.
Если вы выполняете большие партии редактирования, этот рабочий может не быть в состоянии идти в ногу с редактированием.
Вы можете ускорить это, увеличив переменную MAX_JOBS в вашем файле .env
(см. выше), чтобы запускать больше заданий между перезапусками.
This change won't take effect in the job runner until you restart your docker compose
project.
Если вы хотите, вы также можете запускать несколько команд выполнения заданий параллельно, добавив параметр --scale wikibase_jobrunner=8
к команде docker compose up
Смотрите раздел Установка выше.
Связи с внешними сайтами
Чтобы создать ссылки между MediaWiki и Wikibase, запустите скрипт добавить сайт. Вы можете узнать больше о добавлении дополнительных ссылок на странице справки Дополнительные ссылки Викиданных и Страница расширенной настройки Викибазы.
Попробуйте вашу первую установку
После начала всех услуг вы можете начать заполнять, расширять и настраивать свой пустой экземпляр Викибазы. Взгляните на нашу страницу ресурсы по настройке, чтобы начать.