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. Tato doména je ve stejném seznamu jako ostatní domény a můžete ji později odstranit, pokud v seznamu zůstane alespoň jedna jiná doména.

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, subdomény z vašich DNS zón a subdomény na naší testovací doméně rostiapp.cz. 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. Subdomény na rostiapp.cz se přiřadí bez vytváření DNS záznamů, ale konkrétní celá doména může být použitá jen u jedné aplikace, stacku nebo 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, modré subdomény na testovací doméně a oranžové externě spravované domény. Seznam domén nesmí zůstat prázdný.

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.