Blog / Baza Wiedzy

Jak zainstalować Nextcloud na serwerze VPS za pomocą Docker Compose

4 min czytania
Jak zainstalować Nextcloud na serwerze VPS za pomocą Docker Compose

Wstęp

Masz dość płacenia abonamentów za Google Drive, Dropboxa czy iCloud? Posiadając serwer VPS, możesz z łatwością stworzyć własną, całkowicie prywatną chmurę na pliki korzystając z Nextcloud. To potężna platforma open-source, która pozwala na przechowywanie plików, synchronizację kontaktów i kalendarzy, dając Ci 100% kontroli nad własnymi danymi.

W tym poradniku uruchomimy Nextcloud za pomocą Docker Compose, co gwarantuje czystą, odizolowaną i łatwą w zarządzaniu instalację.

Wymagania wstępne: Potrzebujesz serwera VPS z systemem Linux, dostępu SSH z kontem użytkownika z uprawnieniami sudo oraz zainstalowanego Dockera z Docker Compose. Jeśli jeszcze tego nie zrobiłeś, sprawdź nasz poradnik konfiguracji Docker Compose.

Krok 1: Wymagania wstępne

Zanim zaczniemy, upewnij się, że na Twoim VPS zainstalowany jest Docker oraz Docker Compose. Jeśli jeszcze tego nie zrobiłeś, sprawdź nasz poradnik o podstawach Docker Compose.

Sprawdź, czy narzędzia są poprawnie zainstalowane:

Weryfikacja wersji Docker Compose w terminalu

docker compose version

Krok 2: Przygotowanie środowiska

Potrzebujemy wydzielonego katalogu na pliki konfiguracyjne oraz dane chmury.

mkdir ~/nextcloud-server
cd ~/nextcloud-server

Teraz utwórzmy plik docker-compose.yml:

Otwieranie pliku docker-compose.yml w edytorze nano

nano docker-compose.yml

Wklej poniższą konfigurację. Uruchamia ona oficjalny obraz Nextcloud oraz osobną bazę danych MariaDB dla optymalnej wydajności.

services:
  db:
    image: mariadb:latest
    restart: always
    command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
    volumes:
      - db_data:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=twoje_silne_haslo_root
      - MYSQL_PASSWORD=twoje_silne_haslo_bazy
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud

  app:
    image: nextcloud
    restart: always
    ports:
      - 8080:80
    links:
      - db
    volumes:
      - nextcloud_data:/var/www/html
    environment:
      - MYSQL_PASSWORD=twoje_silne_haslo_bazy
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_HOST=db

volumes:
  db_data:
  nextcloud_data:

Uwaga: Pamiętaj, aby przed zapisaniem zmienić twoje_silne_haslo_root i twoje_silne_haslo_bazy na prawdziwe, bezpieczne hasła.

Zapisz plik i wyjdź z edytora (CTRL+X, następnie Y i Enter).

Krok 3: Uruchomienie Nextcloud

Gdy konfiguracja jest gotowa, możemy uruchomić naszą chmurę. Wykonaj poniższe polecenie:

Uruchamianie kontenerów Nextcloud komendą docker compose up -d

docker compose up -d

Docker automatycznie pobierze wymagane obrazy i uruchomi serwisy w tle. Może to potrwać dłuższą chwilę.

Gdy proces się zakończy, otwórz przeglądarkę internetową i wejdź na adres IP swojego serwera z dopiskiem portu 8080:

http://ip_twojego_serwera:8080

Ekran pierwszej konfiguracji Nextcloud w przeglądarce

Pojawi się instalator Nextcloud. Utwórz konto administratora. Nextcloud automatycznie połączy się z bazą danych MariaDB, którą zdefiniowaliśmy w pliku konfiguracyjnym.


Podsumowanie

Gratulacje! Twoja prywatna chmura Nextcloud działa teraz bezpiecznie w kontenerach Docker na Twoim serwerze VPS. Pliki przechowywane są wyłącznie na Twoim sprzęcie, całkowicie bez abonamentów i bez dostępu osób trzecich do Twoich danych.

W następnym kroku zalecamy umieszczenie Nextcloud za własną domeną z bezpłatnym certyfikatem HTTPS, używając Nginx Proxy Manager, dzięki czemu Twoja chmura będzie dostępna z każdego miejsca po szyfrowanym adresie.

Jeśli potrzebujesz niezawodnego serwera do hostowania swojej prywatnej chmury, sprawdź nasze plany Premium VPS lub Budget VPS, które oferują szybkie dyski NVMe SSD i wysoką przepustowość sieci.

Najczęściej zadawane pytania

Wymagany jest serwer VPS z minimum 1 GB pamięci RAM (zalecamy 2 GB dla optymalnej wydajności bazy danych MariaDB) oraz zainstalowanym Dockerem.
Zalecamy uruchomienie serwera proxy, takiego jak Nginx Proxy Manager, aby przekierować domenę z darmowym certyfikatem SSL na port 8080.
Tak, możesz zmodyfikować plik docker-compose.yml, aby korzystał z PostgreSQL lub PostgreSQL Alpine zamiast obrazu MariaDB.
Możesz to zrobić ustawiając zmienne środowiskowe PHP_UPLOAD_LIMIT oraz PHP_MEMORY_LIMIT w pliku docker-compose.yml.
Należy utworzyć kopię zapasową wolumenu bazy danych (za pomocą mysqldump) oraz wolumenu nextcloud_data, w którym przechowywane są wgrane pliki.

Sugeruj poprawki na GitHubie

Zauważyłeś literówkę lub chcesz ulepszyć ten poradnik? Ten wpis jest open-source i możesz go edytować.

Edytuj ten wpis
Wróć do listy wpisów

Języki