Skip to content

Pages

Pages je služba pro hostování statických webů. Hodí se pro HTML, CSS, JavaScript, obrázky a další soubory, které není potřeba spouštět jako aplikaci v kontejneru.

Vytvoření

Nový web vytvoříte v administraci v sekci Pages. Po vytvoření dostane automatickou doménu ve tvaru nazev-1.rostiapp.cz. Tuto doménu můžete ponechat zapnutou, nebo ji vypnout a používat pouze vlastní domény.

Domény

Domény se spravují v detailu webu v záložce Proxy. Pole domén zobrazuje jednotlivé domény jako štítky; doménu potvrdíte mezerou nebo Enterem. Při psaní administrace nabízí volné domény a subdomény z vašich DNS zón. U domén ve zónách spravovaných v Roští umí po potvrzení automaticky vytvořit A a AAAA záznamy na náš load balancer a doménu přiřadit k Pages webu. Domény mimo vaše zóny se přidají jako externě spravované a DNS musíte nastavit u svého poskytovatele. Zelené štítky označují domény v našich DNS zónách, oranžové externě spravované domény. Pokud vypnete výchozí doménu, musí zůstat aktivní alespoň jedna vlastní doména.

Nahrávání souborů přes rosticli

Primární způsob nahrávání souborů je přes rosticli. Webové rozhraní slouží k vytvoření webu, zobrazení informací včetně využitého prostoru a aktuální ceny za 30 dní a správě domén; samotný obsah webu nahrajete z terminálu.

Základní postup:

rosticli login        # pouze při prvním použití
rosticli pages init   # vytvoří nebo propojí Pages web a uloží ho do .rostistate
rosticli pages push   # nahraje soubory z aktuálního adresáře

pages init se zeptá, zda chcete vytvořit nový web, nebo použít existující. Vybrané ID společnosti a webu uloží do .rostistate. Stavový soubor obsahuje informaci, že tento adresář patří ke službě Pages; příkazy pro stacky v takovém adresáři skončí chybou a naopak.

Pokud chcete nahrávat jiný adresář než aktuální, použijte --dir:

rosticli pages push --dir dist

Soubor .rostistate a soubory .rostiignore se nikdy nenahrávají. Další soubory můžete vynechat pomocí .rostiignore, který používá běžnou syntaxi podobnou .gitignore:

node_modules/
*.log
.env

Ve výchozím nastavení se ignore pravidla čtou ze souboru ./.rostiignore v aktuálním adresáři. Jiný soubor určíte pomocí --ignore-file:

rosticli pages push --dir dist --ignore-file .deployignore

Více prostředí pomocí targetů

Stejně jako u stacků můžete v jednom adresáři spravovat více Pages webů, například production a staging:

rosticli pages init --target production
rosticli pages init --target staging
rosticli pages targets
rosticli pages set-target production
rosticli pages push
rosticli pages push --target staging

pages targets vypíše dostupné targety a označí aktivní target hvězdičkou. pages set-target production změní aktivní target pro další příkazy. --target slouží jako jednorázové přepsání aktivního targetu.

Target od lokálního adresáře odpojíte příkazem:

rosticli pages unlink --target staging

Odpojení nesmaže web v Pages, odstraní pouze lokální vazbu v .rostistate. Celý stavový soubor odstraníte pomocí rosticli pages unlink --all.

Správa obsahu

Vzdálené soubory vypíšete příkazem:

rosticli pages files
rosticli pages files assets

Obsah smažete pomocí pages delete. Bez cesty smaže celý obsah webu, ale web samotný v systému zůstane:

rosticli pages delete              # smaže vše po potvrzení
rosticli pages delete assets/app.js
rosticli pages delete --path assets --path old.html
rosticli pages delete --force      # bez potvrzení

Informace o webu, doménách a využitém prostoru zobrazíte příkazem:

rosticli pages info
rosticli pages info --json
rosticli pages info --page-id 456 --company-id 123

Všechny weby dostupné pod vaším tokenem vypíšete pomocí:

rosticli pages list

Alternativně můžete použít REST API.

Příklad nahrání souboru přes REST API:

curl --fail --silent --show-error \
  -X PUT \
  "https://admin.rosti.cz/api-n/123/pages/456/files/index.html" \
  -H "X-API-Key: VAS_API_TOKEN" \
  -H "Content-Type: application/octet-stream" \
  --data-binary "@index.html"

Stažení souboru:

curl --fail --silent --show-error \
  "https://admin.rosti.cz/api-n/123/pages/456/files/index.html" \
  -H "X-API-Key: VAS_API_TOKEN" \
  -o index.html

Smazání souboru:

curl --fail --silent --show-error \
  -X DELETE \
  "https://admin.rosti.cz/api-n/123/pages/456/files/index.html" \
  -H "X-API-Key: VAS_API_TOKEN"

123 je ID společnosti a 456 je ID webu v Pages. Obě hodnoty najdete v URL administrace.