# App
Na platformě OSCloud nabízíme předinstalované i volně dostupné aplikace, které můžete snadno spravovat přímo z našeho uživatelského rozhraní.
## Předinstalované aplikace
Tyto aplikace jsou již připravené k okamžitému použití:
- Mastodon: Decentralizovaná sociální síť.
- Pixelfed: Platforma pro sdílení fotografií.
- Nextcloud: Soukromý cloud pro ukládání a sdílení souborů.
- Nástroje pro produktivitu: CryptPad, HedgeDoc pro týmovou spolupráci a organizaci projektů.
## Další dostupné aplikace k instalaci
Pokud potřebujete další aplikace, můžete je kdykoli snadno nainstalovat přímo z našeho App Storu. K dispozici jsou například:
- Fotografické aplikace: Lychee, Piwigo pro správu a sdílení fotografií.
- Webové aplikace: WordPress, Surfer pro tvorbu a správu webových stránek.
S OSCloud máte plnou kontrolu nad tím, jaké aplikace potřebujete pro svůj projekt, a všechny aplikace jsou pravidelně aktualizovány a bezpečně spravovány.
Chcete-li zobrazit kompletní seznam aplikací, navštivte [Aplikace](aplikace.md).
### Ikona
V sekci `Ikona` můžete nastavit vlastní ikonu pro aplikaci. Pokud ikona není nastavena, použije se ikona balíčku aplikace.
### Operátor
Administrátor může nastavit uživatele nebo skupiny jako operátory aplikace. Operátor aplikace může provádět konfigurační a údržbové úkoly. Na rozdíl od administrátora aplikace nemůže operátor aplikaci odinstalovat ani změnit její umístění. Operátoři také nemohou klonovat aplikace, protože nemají oprávnění k instalaci nových aplikací.
Operátor uvidí na svém panelu ikonu ozubeného kola:
Po kliknutí na ikonu ozubeného kola se jim zobrazí uživatelské rozhraní operátora:
## Informace
Různé informace o aplikaci naleznete v sekci `Info` aplikace:
* `Název a verze aplikace` - Toto je název aplikace a verze upstream aplikace.
* `App ID` - Unikátní ID instance aplikace.
* `Verze balíčku` - Verze balíčku OSCloud, která je odlišná od verze aplikace.
* `Nainstalováno` - Datum instalace aplikace.
* `Poslední aktualizace` - Kdy byla aplikace naposledy aktualizována.
### Poznámky admina
Poznámky specifické pro aplikaci lze uložit ve formátu Markdown. Poznámky jsou sdílené mezi administrátory. Všichni administrátoři a [operátoři aplikací](#operators) je mohou zobrazit a upravovat.
## Zabezpečení
### robots.txt
Soubor `Robots.txt` je soubor sloužící k určení, které části webu by měl vyhledávač indexovat. Tento soubor se řídí
[Robots Exclusion Standardem](https://cs.wikipedia.org/wiki/Robots_exclusion_standard). Google má
[skvělý dokument](https://developers.google.com/search/reference/robots_txt) o tom, jak robots.txt funguje.
Obsah souboru robots.txt pro aplikaci můžete nastavit v sekci `Zabezpečení` v uživatelském rozhraní aplikace.
Ve výchozím nastavení OSCloud nenastavuje robots.txt pro aplikace. Pokud není nastaven, aplikace si může poskytovat vlastní robots.txt.
Kromě toho má stránka administrace OSCloud vlastní robots.txt, který zakazuje indexování:
```bash
User-agent: *
Disallow: /
```
### HSTS Preload
[HSTS Preload](https://hstspreload.org/) je seznam stránek, které jsou v prohlížečích jako Chrome, Firefox, Opera a další hardcodovány jako HTTPS-only.
Požadavky a důsledky:
* Vzhledem k velikosti seznamu jsou akceptovány automatické žádosti o přidání celých domén (hlavní doména).
* To zabrání přístupu ke všem subdoménám bez platného certifikátu HTTPS.
* Nové položky jsou hardcodovány do zdrojového kódu prohlížeče Chrome a může trvat několik měsíců, než se dostanou do stabilní verze.
Po aktivaci OSCloud bude server zasílat následující hlavičky HSTS:
```
Strict-Transport-Security: max-age=63072000; includeSubDomains; preload
```
Pro aktivaci HSTS Preload tuto možnost zapněte v sekci `Zabezpečení` aplikace:
!!! note "Odeslání"
OSCloud automaticky neodesílá doménu na seznam HSTS Preload. To musíte provést ručně [zde](https://hstspreload.org/).
## Cron
Cron úlohy, které aplikace potřebují k fungování, jsou již integrovány do balíčku aplikace a není potřeba další konfigurace. Pokud chcete spustit další vlastní příkazy cron, můžete je přidat v sekci `Cron`.
Příkazy cron jsou spuštěny ve stejném kontextu jako aplikace (v samostatném kontejneru). To znamená, že mají přístup ke stejným prostředím a databázím jako aplikace. Sledují také životní cyklus aplikace – pokud je aplikace zastavena, cron úlohy se nespouštějí. Výstup z cron příkazů lze prohlížet pomocí [prohlížeče logů](#log-viewer).
Časy v cron jsou specifikovány v UTC.
Vzorový vzor plánu může být jeden z následujících [rozšíření cron](https://www.man7.org/linux/man-pages/man5/crontab.5.html#EXTENSIONS):
* `@service` : Spustí jednou při restartu aplikace nebo pokud je aplikace již spuštěná.
* `@reboot ` : Spustí jednou při restartu aplikace nebo pokud je aplikace již spuštěná.
* `@yearly` : Spustí jednou ročně, např. `0 0 1 1 *`.
* `@annually` : Spustí jednou ročně, např. `0 0 1 1 *`.
* `@monthly` : Spustí jednou měsíčně, např. `0 0 1 * *`.
* `@weekly` : Spustí jednou týdně, např. `0 0 * * 0`.
* `@daily` : Spustí jednou denně, např. `0 0 * * *`.
* `@hourly` : Spustí jednou za hodinu, např. `0 * * * *`.
!!! note "Řetězení příkazů"
Příkazy mohou být spojeny pomocí `&&` nebo `||`. Například: `echo "=> Doing job" && /app/data/do_job.sh`
## Webový Terminál
OSCloud poskytuje webový terminál, který umožňuje přístup k souborovému systému aplikace. Webový terminál lze použít k prohlížení a úpravám souborů aplikace, přístupu k databázi atd. OSCloud spouští aplikace jako kontejnery s režimem souborového systému pouze pro čtení. Pouze adresáře `/run` (dynamická data), `/app/data` (zálohovaná data) a `/tmp` (dočasné soubory) jsou zapisovatelné.
Webový terminál lze otevřít pomocí tlačítka Web Terminal:
Po kliknutí se otevře nové okno. Terminál je v podstatě shell do souborového systému aplikace.
## Správce souborů
OSCloud poskytuje Správce souborů, který lze použít k úpravě souborového systému aplikace přímo z prohlížeče.
Správce souborů lze otevřít pomocí tlačítka File Manager:
Po kliknutí se otevře nové okno. V kontextové nabídce jsou dostupné akce jako Přejmenovat, Smazat, Změnit vlastnictví.
## Přístup přes SFTP
Některé aplikace, jako WordPress, LAMP, Surfer, podporují přístup k datům přes SFTP. Soubory lze prohlížet a nahrávat pomocí libovolného SFTP klienta. Informace o připojení k SFTP lze zobrazit kliknutím na položku menu `SFTP Access`.
SFTP klient, jako je například [FileZilla](https://filezilla-project.org/), lze použít k připojení následovně:
* `Host` - `sftp://my.oscloud.cz` (hostitel je stejný pro přístup SFTP ke všem aplikacím)
* `Username` - `oscloud@lamp.oscloud.cz` (uživatelské jméno je specifické pro každou aplikaci)
* `Password` - heslo do OSCloud (stejné heslo pro přístup SFTP ke všem aplikacím)
* `Port` - 222
Pouze administrátoři OSCloud mají přístup přes SFTP.
!!! note "Port 222"
SFTP služba běží na portu 222. Firewall serveru má již tento port otevřený. Nicméně budete muset tento port povolit i ve firewallu poskytovatele hostingu (např. EC2 Security Group nebo DigitalOcean Firewall). Pokud je doména frontovaná přes Cloudflare, použijte IP adresu serveru pro připojení přes SFTP namísto `my.domain.com`.
## Prohlížeč logů
Pro zobrazení logů aplikace klikněte na tlačítko logů:
Tím se otevře vyskakovací okno, které zobrazí logy:
Logy jsou udržovány do velikosti 10 MB pro aktuální logy a jeden rotovaný log na aplikaci. Logy starší než 14 dní jsou odstraněny. Surové logy se nacházejí v `/home/yellowtent/platformdata/logs//`.
## Grafy
Pohled na grafy ukazuje přehled využití CPU, disku, sítě a paměti aplikace.
## Zastavení aplikace
Aplikaci lze zastavit pomocí tlačítka Stop v panelu nástrojů aplikace.
## Odinstalace
Odinstalováním aplikace, se okamžitě odstraní všechna data spojená s aplikací z OSCloud.
!!! note "Zálohy nejsou odstraněny"
Zálohy aplikace nejsou při odinstalaci odstraněny a jsou vyčištěny pouze na základě zálohovací politiky. Aplikace mohou být vždy [obnoveny](/backups/#restoring-an-app-from-existing-backup) z jejich záloh pomocí nástroje CLI.
## Verze
S aplikací jsou spojeny dvě nezávislé verze. Tyto informace jsou uvedeny v sekci [Info](#info).
* `Verze balíčku`. OSCloud používá [semver](https://semver.org/) pro své balíčky aplikací.
* `Verze aplikace` nebo `Verze upstream`. Formát verzí aplikace se může výrazně lišit – může být založen na datech, semveru, číslech git commitů atd.