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

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

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

Установка

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

Веб-консоль

Скопируйте содержимое из файла template.yml и импортируйте их в свой проект, затем создайте приложение с помощью кнопки Create (Сздать) в веб-консоли OpenShift. Веб-консоль предложит вам изменить значения параметров, используемых в шаблоне.

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

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

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

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

Параметры

The parameters that you can override are listed in the parameters section of the template. You can list them with the CLI by using the following command and specifying the file to be used:

$ 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>
# ATTTENTION! 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.