Kihagyás

Verziónkénti telepítési útmutató minta

Clusterben való futás esetén

Ha az alkalmazások több gépen futnak, akkor a telepítési lépéseket először az egyik gépen hajtsuk végre, ha sikeres volt, akkor a többi gépen is.

1. Backup készítése

1.1 Adatbázis backup készítése

Az új verzió előtt készítsünk backupot az adatbázis aktuális állapotáról.

Rendelkezzünk forgatókönyvvel is arra az esetre, ha a backup visszatöltése szükségessé válik.

1.2 Konfigurációs fájlok backupja

Amennyiben bármelyik konfigurációs fájl módosítása szükséges a telepítés előtt (haproxy.cfg, .env, logback-spring.xml), mielőtt módosítanánk a fájlokat készítsünk backupot róluk.

Fontos, hogy az /opt/project/infrastructure/.env fájl tartalmát, minden telepítés során módosítjuk, így minden telepítés előtt szükséges belőle biztonsági másolatot készíteni!

2. Új verzió telepítése

Az alábbi lépéseket az alkalmazást futtatni jogosult felhasználóval hajtsuk végre.

2.1 Image betöltése

Töltsük be a .tar-ban kapott fájlokból az alkalmazás image fájlokat a docker load parancs segítségével.

docker load -i backend_service_${version-number}.tar
docker load -i client_spa_${version-number}.tar
  • A ${version-number} placeholder helyére értelemszerűen a telepíteni kívánt verziószámot kell behelyettesíteni.

2.2 Verzió beállítása

Állítsuk be a futtatni kívánt verziókat az /opt/project/infrastructure/.env fájlban.

Fontos, hogy mielőtt bármilyen módosítást végeznénk a .env fájlon, készítsünk róla biztonsági másolatot! (1.2-es lépés)

A verziószámok frissítéséhez az .env fájlban frissítsük a verziószámokat:

BACKEND_SERVICE_VERSION=${version-number}
CLIENT_SPA_VERSION=${version-number}

...

  • A ${version-number} placeholder helyére értelemszerűen a telepíteni kívánt verziószámot kell beírni.

2.3 Új verzió indítása

Adjuk ki az /opt/project/infrastructure mappában az alábbi parancsokat:

docker compose -f docker-compose-services.yml down
docker compose -f docker-compose-services.yml up -d

3. Alkalmazások futásánák ellenőrzése

3.1 A docker ps parancs segítségével

Ha a docker ps parancsnál látjuk az alkalmazásokat futni, akkor a containerek sikeresen elindultak.

3.2 Szerver logfájlban ellenőrzés

A logs mappában található backend-service.log sikeres indulás esetén az alábbihoz hasonló üzenetet láthatjuk:

Started BackendApplication in x seconds

3.3 Böngészőből való ellenőrzés

Ha a megfelelő domaineket beütve a böngészőbe betöltenek az alkalmazások, akkor a telepítést át lehet adni az üzlet/tesztelő/ügyfél oldalnak.

4. Esetleges rollback alkalmazása

Az alábbi lépéseket az alkalmazást futtatni jogosult felhasználóval hajtsuk végre.

4.1 Alkalmazások leállítása

Adjuk ki az /opt/project/infrastructure mappában az alábbi parancsot:

docker compose -f docker-compose-services.yml down

4.2 DB visszaállítása backupból

Töltsük vissza a backup-ot a DB-be.

4.3 Konfigurációs fájlok visszaállítása backupból

Az esetlegesen módosított konfigurációs fájlok (haproxy.cfg, .env, logback-spring.xml) tartalmát állítsuk vissza a backup alapján.

Fontos, hogy az /opt/project/infrastructure/.env fájl tartalmát, minden telepítés során módosítjuk, így a tartalmát minden rollback esetén szükséges visszaállítani!

4.4 Alkalmazások elindítása

Adjuk ki /opt/project/infrastructure mappában az alábbi parancsot:

docker compose -f docker-compose-services.yml up -d