Nextcloud är en öppen källkods-molnlösning och en fork av ownCloud, grundad 2016 av den tidigare ownCloud-grundaren Frank Karlitschek. Med Nextcloud driver du ditt eget privata moln för filer, kalendrar, kontakter, chatt och videosamtal – helt under din egen kontroll istället för hos en extern leverantör.
För att säkerställa optimal prestanda, stabilitet och funktionalitet rekommenderar vi följande setup för hosting av en Nextcloud-server. Nextcloud-servern är inte kompatibel med Windows eller macOS, åtminstone inte utan extra virtualisering eller liknande lösningar.
Följande krav baseras på Nextclouds officiella systemkrav samt våra egna erfarenheter. Om du inte uppfyller dessa krav kan problem uppstå.
| Komponenter | Minimum | Rekommenderat |
|---|---|---|
| CPU | 1x 2 GHz | 4x 2+ GHz |
| RAM | 1 GB | 4+ GB |
| Lagring | 10 GB | 50+ GB (beroende på mängden lagrade data) |
| Bandbredd | 100 Mbit/s (upp & ner) | 500 Mbit/s (upp & ner), rekommenderas om flera användare använder molnet |
| Plattform | Alternativ |
|---|---|
| Operativsystem | Ubuntu (22.04, 24.04), Debian (12, 13) |
| Databas | MariaDB 10.11+ (rekommenderat), PostgreSQL 14+, MySQL 8.0+, SQLite (endast för test och minimala installationer) |
| Webbserver | Apache 2.4 med mod_php eller php-fpm (rekommenderat), alternativt Nginx med php-fpm |
| PHP | 8.3, 8.4, 8.5 (rekommenderat) |
För de senaste kraven, se Nextclouds officiella dokumentation – Nextcloud uppdaterar regelbundet sina PHP- och databas-krav med nya större versioner.
För installation på en Linux-server måste du ansluta via en SSH-klient. Om du är osäker på hur SSH fungerar, finns en guide här: Första åtkomst (SSH)
När anslutningen är upprättad kan du installera de nödvändiga paketen för själva Nextcloud-installationen. Det inkluderar installation av en webbserver samt PHP med de tillägg som Nextcloud behöver (bl.a. gd, curl, mbstring, xml, zip, intl, bcmath, gmp, apcu).
Apache (webbserver) och PHP
🗄️ Ubuntu 24.04 (levererar PHP 8.3 direkt):
sudo apt update && sudo apt -y upgrade
sudo apt -y install apache2 php php-cli php-fpm php-common php-mysql php-pgsql php-sqlite3 php-zip php-gd php-mbstring php-curl php-xml php-bcmath php-intl php-gmp php-imagick php-apcu
🗄️ Ubuntu 22.04 (standard-PHP är 8.1, för gammalt för aktuella Nextcloud-versioner – därför behövs PPA):
sudo apt update && sudo apt -y upgrade
sudo apt -y install apache2 software-properties-common
sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt -y install php8.3 php8.3-cli php8.3-fpm php8.3-common php8.3-mysql php8.3-pgsql php8.3-sqlite3 php8.3-zip php8.3-gd php8.3-mbstring php8.3-curl php8.3-xml php8.3-bcmath php8.3-intl php8.3-gmp php8.3-imagick php8.3-apcu
🗄️ Debian 13 "trixie" (levererar PHP 8.3 direkt):
sudo apt update && sudo apt -y upgrade
sudo apt -y install apache2 php php-cli php-fpm php-common php-mysql php-pgsql php-sqlite3 php-zip php-gd php-mbstring php-curl php-xml php-bcmath php-intl php-gmp php-imagick php-apcu
🗄️ Debian 12 "bookworm" (standard-PHP är 8.2, för gammalt för aktuella Nextcloud-versioner – därför behövs tredjepartsrepo):
sudo apt update && sudo apt -y upgrade
sudo apt -y install apache2 lsb-release apt-transport-https ca-certificates wget
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update
sudo apt -y install php8.3 php8.3-cli php8.3-fpm php8.3-common php8.3-mysql php8.3-pgsql php8.3-sqlite3 php8.3-zip php8.3-gd php8.3-mbstring php8.3-curl php8.3-xml php8.3-bcmath php8.3-intl php8.3-gmp php8.3-imagick php8.3-apcu
Kontrollera PHP-version:
php -v
Nextcloud kräver memory_limit = 512M eller högre. Ange detta värde i rätt php.ini (t.ex. /etc/php/8.3/apache2/php.ini eller /etc/php/8.3/fpm/php.ini) och starta sedan om Apache eller PHP-FPM.
Nästa steg är att välja en databas för att lagra Nextcloud-data. Välj ett av följande alternativ och följ bara stegen för ditt val.
Installera paket:
sudo apt-get install mariadb-server
Under installationen uppmanas du att sätta ett root-lösenord. Om ingen lösenordsfråga visas är standardlösenordet tomt. Det är osäkert och bör ändras omedelbart!
Anslut sedan till databasservern och skapa den nödvändiga databasen:
mysql -u root -p
CREATE DATABASE nextcloud;
Skapa därefter en användare som får åtkomst till Nextcloud-databasen:
CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'DITT_LÖSENORD_HÄR';
Hoppa inte över detta steg genom att använda root-användaren. Det är osäkert och äventyrar dina data!
Tilldela slutligen användaren rättigheter:
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
FLUSH PRIVILEGES;
När du är klar kan du lämna databasen med exit och fortsätta med nästa steg.
Installera paket:
sudo apt-get install mysql-server
Under installationen uppmanas du att sätta ett root-lösenord. Om ingen lösenordsfråga visas är standardlösenordet tomt. Det är osäkert och bör ändras omedelbart!
Anslut sedan till databasservern och skapa den nödvändiga databasen:
mysql -u root -p
CREATE DATABASE nextcloud;
Skapa därefter en användare som får åtkomst till Nextcloud-databasen:
CREATE USER 'nc_user'@'localhost' IDENTIFIED BY 'DITT_LÖSENORD_HÄR';
Hoppa inte över detta steg genom att använda root-användaren. Det är osäkert och äventyrar dina data!
Tilldela slutligen användaren rättigheter:
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nc_user'@'localhost';
FLUSH PRIVILEGES;
När du är klar kan du lämna databasen med exit och fortsätta med nästa steg.
Installera paket:
sudo apt-get update
sudo apt-get install postgresql postgresql-contrib
Anslut sedan till databasservern och skapa databas och användare:
sudo -u postgres psql
CREATE USER nc_user WITH ENCRYPTED PASSWORD 'DITT_LÖSENORD_HÄR';
CREATE DATABASE nextcloud OWNER nc_user;
Hoppa inte över detta steg genom att använda postgres-superanvändaren för Nextcloud. Det är osäkert och äventyrar dina data!
När du är klar kan du lämna databasen med \q. PostgreSQL-anslutningsuppgifterna anger du antingen i webbinstallationsprogrammet eller direkt i config.php:
<?php
$CONFIG = array(
'dbtype' => 'pgsql',
'dbname' => 'nextcloud',
'dbuser' => 'nc_user',
'dbpassword' => 'DITT_LÖSENORD_HÄR',
'dbhost' => 'localhost',
'dbtableprefix' => '',
);
SQLite är endast lämpligt för testning eller mycket små enanvändarinstallationer – Nextcloud-utvecklarna avråder starkt från att använda det i produktionsmiljö med flera användare (bl.a. på grund av bristande samtidighet vid parallella åtkomster).
Installera paket:
sudo apt-get install sqlite3 php8.3-sqlite3
Nextcloud skapar SQLite-databasfilen automatiskt under installationen, ingen manuell databas måste skapas. Konfigurationen i config.php ser ut så här:
<?php
$CONFIG = array(
'dbtype' => 'sqlite3',
'dbname' => 'nextcloud',
'dbtableprefix' => '',
);
