Alanud kuul hakkame Zone platvormil järk-järgult uuendama NodeJS
ja Python
vaikeversioone, mistõttu palume käesoleva kirjatükiga tähelepanu just nendelt kasutajatelt, kes nimetatud tarvkaradega sina peal.
NodeJS LTS 20
NodeJS versiooni muutus võib mõjutada kasutajaid mitmeti.
PM2 all jooskvad veebirakendused
Kõige suurem ja kohesem mõju on NodeJS-is kirjutatud veebirakendustele, mis töötavad pidevalt serveris. Pärast versiooniuuendust lõpetab rakendus töötamise, kui see ei ühildu uue versiooniga. Tuleb pöörata tähelepanu sellele, et serveri uuendamise käigus taaskäivitatakse kõik rakendused. Oluline on veenduda, et rakendus töötab ka uue versiooniga või kasutada NVM-i abil eelmist versiooni.
JS & CSS build skriptid
Väiksem mõju on skriptidel, mida kasutatakse veebilehe CSS-i ja JS-i kompileerimiseks veebibrauserile arusaadavaks. Kui veebiserveris käivitatakse käske nagu yarn build
või npm run build
, siis jätkab praegune veebileht töötamist ka siis, kui build-skriptid ei ole ühilduvad uue versiooniga. Probleemid võivad tekkida veebilehe koodi uuendamisel, kui on vaja veebis uuendada JS-i ja/või CSS-faile.
Kui kompileerimine toimub eraldiseisvas serveris, mis ei asu Zones, siis see muutus sind ei mõjuta.
NodeJS versioone saab seadistada NVM abil
Kuigi NodeJS versiooni uuendus mõjutab rakendust tavaliselt vähesel määral, tasub siiski ette valmistuda. Kõik sõltuvused võiks viia võimalikult uuele versioonile kasutades yarn
või npm
. Samuti on võimalik juba praegu kasutusele võtta NodeJS 20, kasutades NVM-i (Loe siit: Node Version Manager). NVM abil saab ka seadistada praeguse versiooni nii, et serveri baasversiooni uuendamisel kasutatakse edasi NVM-iga seadistatud eelnevat versiooni.
Kui on kahtlus, et veebirakendus ei pruugi toimida uuema versiooniga, siis tasub praegune versioon eelnevalt NVM-i abil seadistada. Hetkel kasutusel olevat versiooni saab näha veebiserveri SSH konsoolis käivitades käsu node -v
.
Kui paigaldada NVM-iga mingi versioon, näiteks nvm install 18
, siis tuleb vastav versioon märkida PM2 ökosüsteemi failis interpreter
väljale, näiteks /dataXX/virtXXX/.nvm/versions/node/v18.20.3/bin/node
, kus /dataXX/virtXXX
tuleks asendada oma SSH kasutaja kodukataloogiga.
Python 3.11
Python ei ole jagatud veebimajutuses kõige levinum tarkvara. Kui sul on kasutusel lihtne veebirakendus, siis võid seda peatükki ignoreerida. Kui sul on aga kasutuses spetsiifiline rakendus, mis jookseb Pythonil, siis on oluline teada, et vaikeversioon uuendatakse versioonilt 3.8 versioonile 3.11.
Python 3.11 on juba praegu meie serverites saadaval käsuga python3.11
. Praegune python
käivitab taustal python3.8
. Seega on võimalik oma rakendused üle viia uuemale versioonile juba praegu. Muudatuse käigus hakkab python
käivitama python3.11
. Hiljem suve teises pooles eemaldatakse vanem versioon 3.8 süsteemist.
Selleks, et rakendus tööle jääks, on soovitatav pärast serveri uuendust uuendada virtualenv
pöördudes otse uuema python3.11
poole.
Uue virtualenv-i versiooniga 3.11 saab luua käsuga virtualenv ~/faili/teekond --python=python3.11
, kus ~/faili/teekond
tuleks asendada soovitud asukohaga.