Poradnik serwerowy

Instalacja Nextcloud
na Debianie 12

Apache + PHP + MariaDB Debian 12 Bookworm Nextcloud Server
// spis kroków
  1. Aktualizacja systemu
  2. Instalacja Apache
  3. Instalacja MariaDB
  4. Instalacja PHP
  5. Baza danych
  6. Pobranie Nextcloud
  7. Uprawnienia
  8. Konfiguracja Apache
  9. Dokończenie instalacji
  10. Dostęp z Internetu
01

Aktualizacja systemu

Przed instalacją zaktualizuj listę pakietów i zainstaluj dostępne uaktualnienia.

bash
sudo apt update
sudo apt upgrade -y
02

Instalacja Apache

Apache będzie serwerem HTTP obsługującym Nextcloud.

bash
sudo apt install apache2 -y

Sprawdź czy Apache działa poprawnie:

bash
sudo systemctl status apache2
03

Instalacja MariaDB

MariaDB to baza danych, w której Nextcloud przechowuje metadane i konfigurację.

bash
sudo apt install mariadb-server -y

Zabezpiecz instalację bazy danych:

bash
sudo mysql_secure_installation
04

Instalacja PHP i modułów

Nextcloud wymaga PHP wraz z zestawem rozszerzeń. Zainstaluj wszystko jedną komendą:

bash
sudo apt install php php-cli php-fpm php-mysql php-gd php-curl \
php-mbstring php-intl php-imagick php-xml php-zip \
php-bcmath php-gmp php-apcu libapache2-mod-php -y

Zweryfikuj wersję PHP:

bash
php -v
05

Utworzenie bazy danych

Zaloguj się do MariaDB i utwórz dedykowaną bazę oraz użytkownika dla Nextcloud.

bash
sudo mysql
sql
CREATE DATABASE nextcloud;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'TwojeSilneHaslo';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Uwaga: Zamień TwojeSilneHaslo na własne, bezpieczne hasło i zapamiętaj je – będzie potrzebne podczas konfiguracji Nextcloud.
06

Pobranie Nextcloud

Pobierz najnowszą wersję Nextcloud i wypakuj ją do katalogu serwera.

bash
cd /tmp
wget https://download.nextcloud.com/server/releases/latest.zip
sudo apt install unzip -y
unzip latest.zip
sudo mv nextcloud /var/www/
07

Ustawienie uprawnień

Przypisz katalog Nextcloud do użytkownika Apache, aby serwer mógł odczytywać pliki.

bash
sudo chown -R www-data:www-data /var/www/nextcloud
sudo chmod -R 755 /var/www/nextcloud
08

Konfiguracja Apache

Utwórz plik wirtualnego hosta dla Nextcloud:

bash
sudo nano /etc/apache2/sites-available/nextcloud.conf

Wklej następującą konfigurację:

apache config
<VirtualHost *:80>
    ServerName localhost

    DocumentRoot /var/www/nextcloud

    <Directory /var/www/nextcloud>
        Require all granted
        AllowOverride All
        Options FollowSymLinks MultiViews
    </Directory>
</VirtualHost>

Aktywuj wymagane moduły Apache:

bash
sudo a2enmod rewrite headers env dir mime

Aktywuj stronę i przeładuj Apache:

bash
sudo a2ensite nextcloud.conf
sudo systemctl reload apache2
09

Dokończenie instalacji

Otwórz przeglądarkę i przejdź pod adres IP serwera:

url
http://192.168.1.100/

W kreatorze instalacji podaj następujące dane:

10

Dostęp z Internetu

Aby Nextcloud był dostępny spoza sieci lokalnej, skonfiguruj poniższe elementy:

⇄
Przekierowanie portów
Otwórz porty 80 (HTTP) i 443 (HTTPS) w routerze UPC i przekieruj na IP serwera.
◎
Domena lub DDNS
Użyj własnej domeny lub darmowego DDNS (np. DuckDNS) jeśli masz dynamiczne IP.
⚿
Certyfikat SSL
Zainstaluj Let's Encrypt przez Certbot, aby włączyć HTTPS.
Wskazówka: Jeśli planujesz częste aktualizacje i zarządzanie wieloma usługami, rozważ instalację Nextcloud przez Docker Compose. Aktualizacje sprowadzają się wtedy do jednej komendy.