# Telepítés OpenShift környezetre

Az OpenShift Weblate sablonnal néhány másodperc alatt elindíthatja saját Weblate példányát. Minden szükséges függőség megtalálható benne. Alapértelmezettként PostgreSQL adatbázist használ, és tartós kötetkérelmek (persistent volume claims) biztosítják a tárolást.

A sablon elérhető itt: <[https://github.com/WeblateOrg/openshift/](https://github.com/WeblateOrg/openshift/)>.

## Telepítés

A következő példák feltételezik, hogy működő OpenShift v3.x környezettel rendelkezik, valamint az `oc` parancssori eszköz is telepítve van. A részletes telepítési útmutatóért tekintse meg az OpenShift dokumentációját.

A `template.yml` fájl minden összetevő futtatására alkalmas OpenShift-ben. Létezik `template-external-postgresql.yml` fájl is, amely nem indít PostgreSQL szervert, hanem külső adatbázisszerver használatát teszi lehetővé.

### Webes felület

Másolja a [template.yml](https://github.com/WeblateOrg/openshift/blob/main/template.yml) nyers tartalmát, importálja saját projektjébe, majd az OpenShift webes konzolon kattintson a Create gombra az alkalmazás létrehozásához. A webes felület kérni fogja a sablonban megadott paraméterek értékeit.

### Parancssoros felület (CLI)

A Weblate sablon feltöltéséhez a jelenlegi projekt sablonkönyvtárába használja a következő parancsot a `template.yml` fájlra hivatkozva:

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

A sablon ezután elérhetővé válik mind a webes felületen, mind a CLI használatával.

#### Paraméterek

A sablonban felülírható paraméterek a „parameters” szakaszban találhatók. Ezek listázhatók CLI használatával, az alábbi parancs segítségével, megadva a használandó fájlt is:

```bash
$ 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
```

#### Előkészítés

A CLI segítségével a sablonok feldolgozásával közvetlenül létrehozhatók az objektumok a generált konfiguráció alapján.

```bash
$ 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
```

Sikeres migráció és telepítés után a Weblate példány elérhető lesz a megadott `WEBLATE_SITE_DOMAIN` paraméteren keresztül.

A konténer beállítása után bejelentkezhet admin felhasználóként a `WEBLATE_ADMIN_PASSWORD` paraméterben megadott jelszóval vagy – ha ez nem lett megadva – az első indításkor generált véletlenszerű jelszóval.

Az admin jelszó visszaállításához indítsa újra a konténert úgy, hogy a `WEBLATE_ADMIN_PASSWORD` értékét az új jelszóra állítja az adott `Secret` erőforrásban.

#### Eltávolítás

```bash
$ 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
```

## Beállítások

A sablon feldolgozásával létrejön egy megfelelő `ConfigMap`, amely a Weblate képfájl testreszabására használható. Ez a `ConfigMap` közvetlenül környezeti változóként kerül csatolásra, és minden módosítás esetén új telepítést indít. További konfigurációs lehetőségekért lásd: [Docker környezeti változók](https://docs.weblate.org/hu/latest/admin/install/docker.md#docker-environment), ahol megtalálható a környezeti változók teljes listája.
