Установка на OpenShift

С помощью OpenShift-шаблона Weblate вы можете обзавестись своим личным экземпляром Weblate за считаные секунды. Все зависимости Weblate уже включены в образ. В качестве базы данных по умолчанию настроена PostgreSQL, а также используются устойчивые заявки на тома (persistent volume claim).

Вы можете найти этот шаблон здесь: <https://github.com/WeblateOrg/openshift/>.

Установка

В следующих примерах предполагается, что у вас есть рабочее окружение OpenShift v3.x, в котором установлена клиентская утилита oc. Для получения конкретных инструкций ознакомьтесь с документацией OpenShift.

Файл template.yml подходит для запуска всех компонентов в OpenShift. Существует также template-external-postgresql.yml, который не запускает сервер PostgreSQL и позволяет настроить внешний сервер PostgreSQL.

Веб-консоль

Copy the raw content from template.yml and import them into your project, then use the Create button in the OpenShift web console to create your application. The web console will prompt you for the values for all of the parameters used by the template.

Командная строка

Чтобы загрузить шаблон Weblate в свою текущую библиотеку проектов, передайте файл template.yml следующей команде:

$ oc create -f https://raw.githubusercontent.com/WeblateOrg/openshift/main/template.yml \
   -n <PROJECT>

Теперь шаблон можно выбрать в веб-консоли или через интерфейс командной строки.

Параметры

Список параметров, которые вы можете переопределить приведён в соответствующей секции шаблона. Вы можете посмотреть их из командной строки (указав необходимый файл) следующим образом:

$ oc process --parameters -f https://raw.githubusercontent.com/WeblateOrg/openshift/main/template.yml

# If the template is already uploaded
$ oc process --parameters -n <PROJECT> weblate

Развёртывание

Вы также можете использовать интерфейс командной строки, чтобы обработать шаблоны и использовать получившуюся конфигурацию, чтобы создать все объекты немедленно.

$ oc process -f https://raw.githubusercontent.com/WeblateOrg/openshift/main/template.yml \
    -p APPLICATION_NAME=weblate \
    -p WEBLATE_VERSION=4.3.1-1 \
    -p WEBLATE_SITE_DOMAIN=weblate.app-openshift.example.com \
    -p POSTGRESQL_IMAGE=docker-registry.default.svc:5000/openshift/postgresql:9.6 \
    -p REDIS_IMAGE=docker-registry.default.svc:5000/openshift/redis:3.2 \
    | oc create -f

После удачной миграции и развёртывания Weblate должен быть доступен по указанному адресу в параметре WEBLATE_SITE_DOMAIN.

После настройки контейнера вы можете войти в систему под пользователем admin с паролем, указанным в WEBLATE_ADMIN_PASSWORD, или случайным паролем, сгенерированным при первом запуске, если он не был установлен явно.

Для сброса пароля пользователя admin перезапустите контейнер с переменной WEBLATE_ADMIN_PASSWORD, установленной в новое значение пароля в соответствующем хранилище секретов (Secrete).

Удаление

$ oc delete all -l app=<APPLICATION_NAME>
$ oc delete configmap -l app= <APPLICATION_NAME>
$ oc delete secret -l app=<APPLICATION_NAME>
# ATTENTION! The following command is only optional and will permanently delete all of your data.
$ oc delete pvc -l app=<APPLICATION_NAME>

$ oc delete all -l app=weblate \
    && oc delete secret -l app=weblate \
    && oc delete configmap -l app=weblate \
    && oc delete pvc -l app=weblate

Конфигурация

При обработке шаблона будет создан соответствующий ConfigMap, который можно использовать для настройки образа Weblate. Этот ConfigMap напрямую монтируется в качестве переменных среды. Он вызывает новую развёртку, каждый раз, когда изменяется. Информацию по другим параметрам настройки и полный список переменных среды смотрите в описании настройки Docker.