Mnozí se odklánějí od běžných možností, jako je Disk Google nebo Dropbox, ve prospěch řešení s vlastním hostitelem, která vám umožní spravovat data podle vlastních podmínek, a jednou solidní možností je Nextcloud.
Tento článek vás provede kompletním návodem krok za krokem, jak nainstalovat Nextcloud Docker na systémy Ubuntu a Debian. Pokryje vše od aktualizace systému a instalace závislostí až po konfiguraci webového serveru a PHP, nastavení databáze a dokončení instalace pomocí Nextcloud Docker Compose.
Proč Self-Host Nextcloud?
Self-hosting Nextcloud znamená převzít kontrolu nad vlastním řešením cloudového úložiště namísto spoléhání se na běžné služby, jako je Disk Google nebo Dropbox. S Nextcloud máte svobodu ukládat a sdílet soubory podle svých podmínek, což vám dává plné vlastnictví vašich dat a úplnou kontrolu nad nastavením soukromí.
Pro mnoho uživatelů je významným lákadlem možnost vyladit a vylepšit platformu pomocí pluginů a integrací. Pomocí Nextcloud docker a Nextcloud docker compose můžete rychle nasadit spolehlivý a bezpečný systém pro sdílení souborů na populárních systémech, protože jsou k dispozici Nextcloud Ubuntu i Nextcloud Debian.
Toto nastavení je praktickým řešením, pokud chcete nainstalovat Nextcloud, aniž byste byli vázáni na omezení služeb třetích stran. Proces instalace dockeru Nextcloud je navržen tak, aby byl přímočarý a umožnil i těm, kteří nejsou ostřílení správci systému, ponořit se do vlastního hostování.
Přijetí instalace Nextcloud Docker může také ušetřit peníze ve srovnání s komerčními cloudovými řešeními, protože platíte hlavně za svůj vlastní hardware nebo server. Navíc dostupné možnosti přizpůsobení – jako je úprava nastavení PHP nebo integrace databáze MySQL – znamenají, že můžete přizpůsobit prostředí tak, aby vyhovovalo vašim specifickým potřebám.
Pokud vás zajímá, jak nainstalovat dokovací stanici Nextcloud, existuje celá řada komunitní podpory a zdrojů, které nabízejí soubory příkladů skládání dokovací stanice Nextcloud, díky čemuž je tento proces vzdělávací i obohacující.
Předpoklady
Než se pustíte do procesu instalace, je chytré mít své prostředí v dobrém stavu. Tato část obsahuje základy, od systémových požadavků a nastavení serveru až po softwarové závislosti pro hladkou instalaci dokovacího zařízení Nextcloud:
| Komponent | Požadavky/Možnosti | Poznámky |
| Operační systém | Ubuntu (22,04 LTS vysoce doporučeno, 24,04 LTS), Red Hat Enterprise Linux 9/8, Debian 12 (Bookworm), SUSE Linux Enterprise Server 15, openSUSE Leap 15.5, CentOS Stream, Alpine Linux | Nextcloud Ubuntu je populární |
| Architektura CPU a OS | 64bitový | Ujistěte se, že CPU, OS a PHP jsou 64bitové |
| PHP | PHP 8.3 (nebo jiné verze) | Použijte 64bitovou verzi, abyste se vyhnuli problémům s kompatibilitou |
| Paměť | Minimálně: 128 MB RAM na proces; Doporučeno: 512 MB na proces; Aktualizátor: 256 MB | Upravte podle použití |
| Přístup | Přístup root nebo sudo | Vyžadováno pro úpravy na úrovni systému |
| Kontejnerové nástroje | Docker, Docker Compose | Zjednodušuje instalaci a správu |
| webový server | Apache 2.4 (doporučeno s mod_php nebo php-fpm) nebo nginx s php-fpm | Vyberte si na základě osobních nebo organizačních potřeb |
| Databáze | MySQL (8.0/8.4), MariaDB (doporučeno 10.6/10.11 nebo 11.4) nebo PostgreSQL | Musí podporovat úroveň izolace InnoDB a READ COMMITTED |
Krok 1: Aktualizujte a připravte svůj systém
Před nastavením instance Nextcloud Docker věnujte chvíli aktualizaci systému a instalaci všech potřebných nástrojů. Berte to jako úklid vašeho pracovního prostoru, než se pustíte do zábavného projektu. Postupujte podle těchto příkazů na vašem serveru Nextcloud Ubuntu:
Aktualizujte svůj seznam balíčků a upgradujte balíčky:
Aktualizujte své repozitáře balíčků a upgradujte nainstalované balíčky pomocí těchto příkazů:
| aktualizace sudo apt sudo apt upgrade -y |
Nainstalujte Docker, Docker Compose a užitečné nástroje:
Získejte Docker, Docker Compose a další užitečné nástroje, jako je curl, wget a build-essential, spuštěním:
| sudo apt install docker.io docker-compose curl wget build-essential -y |
(Volitelné) Přidejte svého uživatele do skupiny Docker:
Tento krok vám umožní spouštět příkazy Dockeru bez předřazení sudo pokaždé:
| sudo usermod -aG docker $USER |
Po spuštění tohoto příkazu se odhlaste a znovu přihlaste, abyste použili změny.
Ověřte instalace:
Zkontrolujte, zda jsou správně nainstalovány Docker a Docker Compose:
| docker – verze docker-compose –verze |
Důrazně se také doporučuje sledovat své protokoly Docker pro odstraňování problémů, které můžete zkontrolovat a spravovat následujícím způsobem tyto kroky.
Nyní, když je váš systém aktualizován a všechny závislosti jsou na svém místě, je výběr spolehlivého hostingového řešení nutností. Cloudy nabídky bleskově rychlé VPS služby s až 240 GB úložiště NVMe SSD (až 2 TB s naším GPU VPS) a 99,95% dostupnost, což z něj dělá vynikající volbu pro hostování vaší instance Nextcloud.
Dále nastavíme váš webový server a upravíme nastavení PHP tak, aby vše fungovalo hladce s vaší instancí Nextcloud Docker.
Krok 2: Konfigurace Apache/Nginx a PHP
Nyní, když je váš systém vše nastaven, je čas uspořádat scénu konfigurací webového serveru a PHP. Tato část vás provede nastavením Apache a Nginx spolu s úpravami PHP, díky kterým bude váš Nextcloud v Dockeru fungovat hladce.
Konfigurace Apache
Pokud používáte Apache, postupujte takto:
Vytvořte konfigurační soubor:
- Otevřete nový soubor pro Nextcloud:
| sudo nano /etc/apache2/sites-available/Nextcloud.conf |
- Do tohoto souboru přidejte něco jako:
| Alias /Nextcloud “/var/www/Nextcloud/”
<Adresář /var/www/Nextcloud/> <IfModule mod_dav.c> |
Aktivujte web:
- Povolte svou novou konfiguraci:
| sudo a2ensite Nextcloud.conf |
Povolit požadované moduly Apache:
- Spuštěním těchto příkazů aktivujte potřebné moduly:
| přepsat sudo a2enmod hlavičky sudo a2enmod sudo a2enmod env sudo a2enmod dir sudo a2enmod mime |
Pokud plánujete používat PHP-FPM s Apache (pomocí mod_fcgi), aktivujte také:
| sudo a2enmod setenvif |
Povolit SSL (volitelné):
- Pro zabezpečené připojení aktivujte SSL pomocí:
| sudo a2enmod ssl sudo a2ensite default-ssl reload služby sudo apache2 |
Konfigurace Nginx
- Pro uživatele Nginx nastavení zahrnuje vytvoření bloku serveru:
Vytvořte soubor bloku serveru:
- Otevřít nový soubor:
| sudo nano /etc/nginx/sites-available/Nextcloud |
- Vložte ukázkovou konfiguraci jako:
| server { poslouchat 80; server_name your-server-ip or cloud.example.com;root /var/www/Nextcloud/; index index.php index.html /index.php$request_uri;location / { try_files $uri $uri/ /index.php?$args; }umístění ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php/php8.3-fpm.sock; fastcgi_index index.php; zahrnout fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } } |
Aktivujte konfiguraci:
- Vytvořte symbolický odkaz pro aktivaci webu:
| sudo ln -s /etc/nginx/sites-available/Nextcloud /etc/nginx/sites-enabled/ |
Otestujte a znovu načtěte Nginx:
- Zkontrolujte konfiguraci a znovu načtěte:
| sudo nginx -t sudo systemctl znovu načíst nginx |
Vyladění nastavení PHP
Nextcloud závisí na PHP s určitými nastaveními. Upravte je úpravou příslušného konfiguračního souboru PHP:
Pro Apache s PHP:
| sudo nano /etc/php/8.3/apache2/php.ini |
Pro Nginx s PHP-FPM:
| sudo nano /etc/php/8.3/fpm/php.ini |
V souboru upravte nastavení, například:
- memory_limit (například 512M)
- upload_max_filesize (například 100M)
- post_max_size (například 100 milionů)
- max_execution_time (například 360)
Po provedení změn restartujte příslušné služby:
- Apache:
| restart služby sudo apache2 |
- PHP-FPM:
| sudo systemctl restart php8.3-fpm |
S nakonfigurovaným webovým serverem a vyladěným PHP jste připraveni na další fázi: nastavení databáze tak, aby obsahovala všechna vaše data Nextcloud.
Krok 3: Nastavení databáze
S nakonfigurovaným systémem a webovým serverem je dalším krokem nastavení databáze pro vaši instalaci Nextcloud. To zahrnuje vytvoření databáze a vyhrazeného uživatele s příslušnými oprávněními. Jak na to:
1. Nainstalujte server MariaDB
Nejprve nainstalujte serverový balíček MariaDB:
| sudo apt install mariadb-server -y |
2. Zajistěte instalaci MariaDB
Spuštěním bezpečnostního skriptu odstraníte nezabezpečená výchozí nastavení:
| sudo mysql_secure_installation |
Budete vyzváni k nastavení hesla uživatele root a provedení dalších voleb souvisejících se zabezpečením. Na všechny výzvy se doporučuje odpovědět „Y“ (ano).
3. Přihlaste se do prostředí MariaDB Shell
Přístup k prostředí MariaDB jako uživatel root:
| sudo mysql -u root -p |
Zadejte heslo uživatele root, které jste nastavili během procesu zabezpečené instalace.
4. Vytvořte novou databázi pro Nextcloud
V prostředí MariaDB spusťte následující příkaz a vytvořte databázi s názvem Nextcloud:
| VYTVOŘIT DATABÁZI Nextcloud ZNAKOVÁ SADA utf8mb4 COLLATE utf8mb4_general_ci; |
5. Vytvořte uživatele vyhrazené databáze
Vytvořte nového uživatele Nextclouduser se silným heslem. Nahraďte your_password_here bezpečným heslem dle vašeho výběru:
| VYTVOŘIT UŽIVATELE ‘Nextclouduser’@’localhost’ IDENTIFIKOVANÉ PODLE ‘vaše_heslo_zde’; |
6. Poskytnout uživateli potřebná oprávnění
Udělte všechna oprávnění v databázi Nextcloud uživateli Nextcloud:
| UDĚLEJTE VŠECHNA PRIVILEGIA NA Nextcloud.* TO ‘Nextclouduser’@’localhost’; |
7. Použijte změny
Vyprázdněním oprávnění zajistíte, že se všechny změny projeví:
| FLUSH PRIVILEGES; |
8. Ukončete prostředí MariaDB Shell
Ukončete prostředí MariaDB zadáním:
| VÝSTUP; |
Po nastavení a konfiguraci databáze jste nyní připraveni přejít k dalšímu kroku: instalace Nextcloud. To bude zahrnovat stažení souborů Nextcloud a jejich konfiguraci pro připojení k databázi, kterou jste právě vytvořili.
Krok 4: Stažení a instalace Nextcloud
Tento krok zahrnuje instalaci nejnovější verze Nextcloud do vašeho systému a její nastavení. Zde máte dvě možnosti: jednu pomocí Dockeru (ideální pro kontejnerové nastavení) a druhou po tradičnější ruční instalaci.
Metoda 1: Použití oficiálního obrázku Dockeru
Pokud dáváte přednost kontejnerovému přístupu, postupujte podle těchto příkazů:
Vytáhněte obrázek Nextcloud Docker:
Stáhněte si nejnovější obraz Nextcloud Docker z Docker Hub:
| docker vytáhnout Nextcloud |
Vytvořte soubor Docker Compose:
Pro snadnější správu vytvořte soubor s názvem docker-compose.yml s následujícím obsahem:
| verze: "3"
služby: svazky: |
Spusťte kontejnery:
Spuštěním tohoto příkazu spustíte Nextcloud a databázové kontejnery na pozadí:
| docker-compose up -d |
Metoda 2: Ruční instalace z archivu Nextcloud
Pokud byste raději pracovali se soubory přímo, postupujte takto:
Stáhněte si nejnovější verzi:
Stáhněte si nejnovější archiv tar Nextcloud:
| wget https://download.Nextcloud.com/server/releases/latest.tar.bz2 |
Rozbalit archiv:
Rozbalte stažený soubor:
| tar -xjf nejnovější.tar.bz2 |
Přesunutí složky Nextcloud:
Přeneste extrahovanou složku do svého webového adresáře:
| sudo mv Nextcloud /var/www/Nextcloud |
Nastavte správná oprávnění:
Upravte vlastnictví, aby váš webový server měl přístup k souborům:
| sudo chown -R www-data:www-data /var/www/Nextcloud |
Vyberte si metodu, která nejlépe odpovídá vašemu stylu. Přístup Docker nabízí snadné nastavení pomocí Nextcloud docker compose, zatímco ruční metoda vám dává přímou kontrolu nad soubory. Ještě lépe pomocí Cloudzy's Docker VPS Plans vytváří efektivní platformu pro nasazení Nextcloud přes Docker, což usnadňuje proces nastavení.
Dále se ponoříme do konfigurace samotného Nextcloudu – nastavení vašeho virtuálního hostitele, povolení SSL a další – k dokončení vašeho cloudového prostředí s vlastním hostováním.
Krok 5: Konfigurace Nextcloud
Nyní, když jste si stáhli a nainstalovali Nextcloud, je čas nastavit virtuálního hostitele Apache a zabezpečit svůj web pomocí SSL, abyste měli přístup ke svému vlastní hostovanému cloudovému úložišti prostřednictvím vyhrazené domény.
Vytvoření souboru virtuálního hostitele Apache
Vytvořte konfigurační soubor pro Nextcloud:
| sudo nano /etc/apache2/sites-available/Nextcloud.conf |
Vložte následující konfiguraci:
Upravte DocumentRoot a ServerName tak, aby vyhovovaly vašemu nastavení (například nahraďte cloud.example.com vaší doménou nebo IP serverem):
| <Virtuální hostitel *:80> DocumentRoot /var/www/Nextcloud/ ServerName cloud.example.com<Directory /var/www/Nextcloud/> Vyžadujte vše uděleno AllowOverride All Možnosti FollowSymLinks MultiViews<IfModule mod_dav.c> Dav pryč </IfModule> </Adresář> </VirtualHost> |
Povolení nové konfigurace
Řekněte Apache o své nové konfiguraci:
| sudo a2ensite Nextcloud.conf |
Znovu načíst Apache:
Aplikujte změny opětovným načtením Apache:
| sudo systemctl reload apache2 |
Zabezpečení vašeho webu pomocí SSL
Pro bezpečný přístup můžete nastavit SSL. Existují dva běžné přístupy: pomocí certifikátu s vlastním podpisem nebo získání certifikátu prostřednictvím Let’s Encrypt.
Možnost 1: Certifikát s vlastním podpisem
Povolte modul SSL:
| sudo a2enmod ssl |
Povolit výchozí web SSL:
| sudo a2ensite default-ssl |
Znovu načíst Apache:
| sudo systemctl reload apache2 |
Možnost 2: Šifrovat certifikát (doporučeno pro veřejné servery)
Nainstalujte Certbot a plugin Apache:
| sudo apt install certbot python3-certbot-apache -y |
- Získejte a nainstalujte certifikát:
Nahraďte cloud.example.com svou doménou:
| sudo certbot –apache -d cloud.example.com |
Dokončete proces podle pokynů.
S nakonfigurovaným virtuálním hostitelem Apache a zavedeným SSL je vaše instance Nextcloud nastavena tak, aby obsluhovala zabezpečená připojení z vámi zvolené domény. Dále přejdeme k nastavení databáze pro ukládání vašich dat Nextcloud, která spojuje vše dohromady a zajišťuje hladký vlastní hostovaný cloud.
Krok 6: Dokončení nastavení
Nyní, když jsou váš webový server a PHP nakonfigurovány, je čas dokončit instalaci. Tento krok je jako přidání finálních úprav do vašeho projektu, než jej odhalíte světu.
Upravit oprávnění souboru:
Před spuštěním průvodce instalací spusťte následující příkaz, abyste se ujistili, že webový server má přístup ke všem souborům Nextcloud:
| sudo chown -R www-data:www-data /var/www/Nextcloud/ |
Přístup k Nextcloud přes váš prohlížeč:
Otevřete prohlížeč a zadejte adresu URL vaší instance Nextcloud, například:
| http://your-server-ip/Nextcloud |
Tím se načte průvodce instalací Nextcloud – přátelské rozhraní, které vás provede konečným nastavením.
Dokončete průvodce instalací:
V průvodci budete vyzváni k zadání:
- Podrobnosti o vaší databázi (hostitel, jméno, uživatel a heslo). V nastavení Dockeru je hostitel databáze často nastaven jako název kontejneru nebo localhost.
- Uživatelské jméno a heslo správce pro vaši instanci Nextcloud.
Postupujte podle pokynů na obrazovce a po dokončení klikněte na tlačítko „Dokončit nastavení“.
Jakmile dokončíte průvodce, váš server Nextcloud dokončí nastavení a uvítá vás váš zbrusu nový řídicí panel Nextcloud. Dále přejdeme ke konfiguraci nastavení po instalaci, jako jsou úlohy cron, ukládání do mezipaměti a vylepšení zabezpečení, aby vaše instance běžela hladce.
Krok 7: Konfigurace po instalaci
Po dokončení průvodce webovou instalací Nextcloud může několik posledních úprav pomoci doladit naplánované úlohy, výkon a zabezpečení. Tato část se týká nastavení úloh na pozadí, integrace mezipaměti s Redis a posílení vaší instance Nextcloud.
Povolení úloh Cron pro naplánované úlohy
Aby váš Nextcloud fungoval hladce, je dobré naplánovat úlohy na pozadí. Nastavte úlohu cron pro spouštění cron skriptu Nextcloud každých pět minut. Otevřete crontab pro uživatele webového serveru (obvykle www-data):
| sudo crontab -u www-data -e |
Poté přidejte tento řádek na konec souboru:
| */5 * * * * php -f /var/www/Nextcloud/cron.php |
Uložte a zavřete editor. Tato úloha zvládne úkoly, jako je čištění dočasných souborů, odesílání oznámení a další rutiny údržby.
Instalace a konfigurace Redis pro ukládání do mezipaměti
Použití Redis může urychlit vaši instanci Nextcloud ukládáním dat do mezipaměti a zlepšením výkonu zamykání souborů. První, nainstalovat Redis a rozšíření PHP pro Redis:
| sudo apt install redis-server php-redis -y |
Dále aktualizujte konfigurační soubor Nextcloud (obvykle se nachází na /var/www/Nextcloud/config/config.php), aby zahrnoval nastavení ukládání do mezipaměti. Přidejte tyto řádky do pole $CONFIG:
| ‚memcache.local‘ => ‚\\OC\\Memcache\\APCu‘, ‚memcache.locking‘ => ‚\\OC\\Memcache\\Redis‘, "redis" => pole( 'host' => 'localhost', "port" => 6379, ), |
Tato konfigurace říká Nextcloud, aby používal APCu pro místní ukládání do mezipaměti a Redis pro zamykání souborů, což zlepšuje výkon i spolehlivost.
Posílení nastavení zabezpečení Nextcloud
Několik dalších opatření může zvýšit bezpečnost vaší instalace:
- Nastavte správná oprávnění souboru:
Upravte vlastnictví a oprávnění vašeho adresáře Nextcloud, abyste omezili přístup:
| sudo chown -R www-data:www-data /var/www/Nextcloud sudo find /var/www/Nextcloud/ -type d -exec chmod 750 {} \; sudo find /var/www/Nextcloud/ -type f -exec chmod 640 {} \; |
- Spusťte příkazy režimu údržby:
Dočasně povolte režim údržby, abyste mohli provádět jakékoli další kontroly zabezpečení nebo aktualizace konfigurace:
| sudo -u www-data php /var/www/Nextcloud/occ maintenance:mode –on # (Zde proveďte všechny potřebné úkony údržby) sudo -u www-data php /var/www/Nextcloud/occ maintenance:mode –off |
- Zkontrolujte konfiguraci svého webového serveru:
Potvrďte, že vaše nastavení Apache nebo Nginx vynucuje HTTPS a podle potřeby omezuje neoprávněný přístup.
Díky těmto posledním krokům bude vaše instance Nextcloud efektivně zpracovávat úlohy na pozadí, využívat lepší výkon díky ukládání do mezipaměti a bude lépe chráněna před potenciálními bezpečnostními hrozbami.
Závěrečné myšlenky
Nyní jste přenesli nastavení dokovacího zařízení Nextcloud z prázdného plátna na plně funkční řešení cloudového úložiště s vlastním hostitelem. S aktualizovaným systémem, nainstalovanými závislostmi a vyladěným webovým serverem spolu s PHP je vaše prostředí Nextcloud Ubuntu připraveno sloužit jako vaše osobní centrum pro sdílení souborů.
Když budete pokračovat v dolaďování nastavení, experimentování s pokročilými konfiguracemi nebo prozkoumávání nových aplikací Nextcloud, je užitečné zvážit svého poskytovatele hostingu. Spolehlivý a cenově dostupné VPS jako Cloudzy zaručuje, že vaše instance Nextcloud zůstane bezpečná a pohotová, což z ní dělá konkrétní základ pro vaše potřeby cloudového úložiště.
Pro větší klid je rozumné podívat se na oficiální bezpečnostní pokyny na Nextcloud Security Hardening a doporučení zálohování na Průvodce zálohováním Nextcloud. Tyto zdroje vám pomohou udržet vaše data v bezpečí a váš server fungovat hladce.