OpenCloud z Docker Compose i Cloudflare Tunnels — Kompletny Przewodnik Instalacji i Konfiguracji (2026)

Spis Treści

  1. Czym jest OpenCloud?
  2. OpenCloud vs Nextcloud — kluczowe różnice
  3. Wymagania systemowe
  4. Architektura wdrożenia z Docker Compose
  5. Instalacja Docker i przygotowanie serwera
  6. Klonowanie repozytorium OpenCloud
  7. Konfiguracja pliku .env — pełny opis wszystkich zmiennych
  8. Wdrożenie z Traefik i Let’s Encrypt
  9. Wdrożenie z Cloudflare Tunnels — krok po kroku
  10. Konfiguracja Collabora Online (edycja dokumentów)
  11. Produkcyjne katalogi danych i uprawnienia
  12. Aktualizacja OpenCloud
  13. Troubleshooting — najczęstsze problemy
  14. FAQ — najczęściej zadawane pytania

1. Czym jest OpenCloud?

OpenCloud to nowoczesna, open-source platforma do samodzielnego hostowania chmury plików — rozwijana przez firmę Heinlein Gruppe i zaprojektowana jako następca technologiczny ownCloud. Platforma umożliwia organizacjom i osobom prywatnym przechowywanie, synchronizację i udostępnianie danych we własnej infrastrukturze, bez uzależnienia od zewnętrznych dostawców chmurowych takich jak Google Drive, OneDrive czy Dropbox.

Bezpłatne warsztaty: Kali Linux od podstaw - fundament pracy pentestera

Naucz się instalacji i konfiguracji Kali Linux, pracy w terminalu, zarządzania uprawnieniami, budowy własnego laboratorium pentestowego oraz korzystania z narzędzi używanych przez specjalistów cyberbezpieczeństwa.

Odbierz dostęp do 13 maja do 23:59

Sprawdź szczegóły: https://asdevops.pl/warsztaty/

 

 

OpenCloud oferuje:

  • Pełną kontrolę nad danymi — serwery pozostają pod kontrolą administratora
  • Edycję dokumentów online przez integrację z Collabora Online (odpowiednik LibreOffice w przeglądarce)
  • WebDAV, CalDAV i CardDAV do synchronizacji plików, kalendarzy i kontaktów
  • Skalowalną architekturę opartą na mikrousługach Go, gotową do wdrożeń enterprise
  • LDAP i zewnętrzne IdP (Keycloak, SAML, OIDC) do zarządzania użytkownikami
  • Obsługę S3 jako magazynu podstawowego (MinIO, AWS S3, Ceph)
  • Skanowanie antywirusowe plików (ClamAV)

Dlaczego OpenCloud, a nie Nextcloud? OpenCloud to przepisana od zera aplikacja w Go, znacznie wydajniejsza i lepiej przygotowana do konteneryzacji. Nie jest retrokompatybilna z wtyczkami Nextcloud, ale oferuje wyższe bezpieczeństwo i prostszą architekturę deploymentu.


2. OpenCloud vs Nextcloud — kluczowe różnice

CechaOpenCloudNextcloud
Język backenduGo (mikrousługi)PHP (monolityczna aplikacja)
KonteneryzacjaNatywna, Docker-firstWymaga dodatkowej konfiguracji
Zarządzanie użytkownikamiLDAP, Keycloak, OIDCWbudowany system + LDAP
Edycja dokumentówCollabora OnlineCollabora / OnlyOffice
WydajnośćWysoka (Go)Średnia (PHP)
Ekosystem wtyczekRozwijający sięDojrzały, 200+ aplikacji
LicencjaApache 2.0AGPLv3
Wsparcie S3NatywnePrzez zewnętrzne aplikacje

3. Wymagania systemowe

Przed instalacją upewnij się, że spełniasz poniższe wymagania:

Minimalne wymagania sprzętowe

  • CPU: 2 vCPU (zalecane 4 vCPU dla Collabora)
  • RAM: 4 GB (zalecane 8 GB z Collabora)
  • Dysk: 20 GB dla systemu + przestrzeń na dane użytkowników
  • System operacyjny: Ubuntu 22.04/24.04 LTS lub Debian 11/12

Wymagania sieciowe (wersja z Traefik + Let’s Encrypt)

Potrzebne są cztery rekordy DNS wskazujące na publiczny adres IP serwera:

cloud.TWOJA.DOMENA        → A  → IP_SERWERA
collabora.TWOJA.DOMENA    → A  → IP_SERWERA
wopiserver.TWOJA.DOMENA   → A  → IP_SERWERA
traefik.TWOJA.DOMENA      → A  → IP_SERWERA

Alternatywnie możesz użyć wildcardowego rekordu DNS: *.TWOJA.DOMENA → A → IP_SERWERA

Porty 80 i 443 muszą być otwarte na serwerze i przepuszczone przez firewall.

Wymagania sieciowe (wersja z Cloudflare Tunnels)

  • Konto Cloudflare (darmowy plan wystarczy)
  • Domena zarządzana przez Cloudflare DNS
  • Brak konieczności otwierania portów — tunel sam nawiązuje połączenie wychodzące

4. Architektura wdrożenia z Docker Compose

OpenCloud dostarcza repozytorium opencloud-compose zawierające modularny zestaw plików Docker Compose. Architektura opiera się na zmiennej COMPOSE_FILE, która pozwala składać stack z wybranych modułów:

docker-compose.yml              # Rdzeń: OpenCloud + wbudowany LDAP
traefik/opencloud.yml           # Reverse proxy Traefik z Let's Encrypt
traefik/collabora.yml           # Traefik dla Collabora
weboffice/collabora.yml         # Serwer Collabora Online
external-proxy/opencloud.yml    # Zewnętrzny proxy (Nginx, Caddy, Cloudflare)
storage/decomposeds3.yml        # Magazyn S3 (MinIO lub zewnętrzny)
idm/ldap-keycloak.yml          # Keycloak jako IdP
antivirus/clamav.yml           # Skaner ClamAV

Zalecane kombinacje COMPOSE_FILE

Wdrożenie standardowe (Traefik + Let’s Encrypt):

COMPOSE_FILE=docker-compose.yml:traefik/opencloud.yml

Z Collabora Online:

COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:traefik/opencloud.yml:traefik/collabora.yml

Z zewnętrznym proxy (Cloudflare Tunnels, Nginx, Caddy):

COMPOSE_FILE=docker-compose.yml:external-proxy/opencloud.yml

Z Keycloak + LDAP:

COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:traefik/opencloud.yml:traefik/collabora.yml:idm/ldap-keycloak.yml:traefik/ldap-keycloak.yml

5. Instalacja Docker i przygotowanie serwera

Połącz się z serwerem przez SSH:

ssh root@IP_TWOJEGO_SERWERA

Zaktualizuj system:

apt update && apt upgrade -y

Zainstaluj Docker zgodnie z oficjalną dokumentacją Docker dla Ubuntu:

# Dodaj oficjalne repozytorium Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] \
  https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" \
  | tee /etc/apt/sources.list.d/docker.list > /dev/null

apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

Uruchom i włącz Docker przy starcie systemu:

systemctl enable docker && systemctl start docker

Sprawdź instalację:

docker --version
docker compose version

6. Klonowanie repozytorium OpenCloud

git clone https://github.com/opencloud-eu/opencloud-compose.git
cd opencloud-compose

Utwórz plik środowiskowy na podstawie szablonu:

cp .env.example .env

Uwaga: Plik .env.example zawiera szablon z domyślnymi wartościami i komentarzami dokumentacyjnymi. Właściwy plik .env jest wykluczony z kontroli wersji (.gitignore), aby zapobiec przypadkowemu opublikowaniu haseł i konfiguracji specyficznej dla domeny.


7. Konfiguracja pliku .env — pełny opis wszystkich zmiennych

Plik .env jest centralnym miejscem konfiguracji całego środowiska OpenCloud. Poniżej znajdziesz szczegółowy opis każdej istotnej zmiennej:

Podstawowe ustawienia

# Driver logów Docker. Domyślnie "local"
LOG_DRIVER=

# WYŁĄCZ na serwerach produkcyjnych (internet-facing)!
# true = pomijaj weryfikację certyfikatów SSL (tylko lokalnie/dev)
INSECURE=true

Wybór modułów (COMPOSE_FILE)

# Wybierz kombinację modułów do uruchomienia
# Standardowa instalacja z Traefik:
COMPOSE_FILE=docker-compose.yml:traefik/opencloud.yml

# Z zewnętrznym proxy (Cloudflare Tunnels):
COMPOSE_FILE=docker-compose.yml:external-proxy/opencloud.yml

Ustawienia Traefik (reverse proxy + SSL)

# Pokaż dashboard Traefik. Domyślnie "false"
TRAEFIK_DASHBOARD=

# Domena dla dashboardu Traefik
TRAEFIK_DOMAIN=traefik.TWOJA.DOMENA

# Uwierzytelnienie HTTP Basic do dashboardu Traefik
# Generuj: echo $(htpasswd -nB admin) | sed -e s/\\$/\\$\\$/g
TRAEFIK_BASIC_AUTH_USERS=

# Email do certyfikatów Let's Encrypt
TRAEFIK_ACME_MAIL=twoj@email.com

# TESTOWANIE: użyj staging Let's Encrypt
TRAEFIK_ACME_CASERVER=https://acme-staging-v02.api.letsencrypt.org/directory
# PRODUKCJA: wykomentuj powyższą linię

# Konfiguracja TLS dla serwisów
TRAEFIK_SERVICES_TLS_CONFIG="tls.certresolver=letsencrypt"

Ustawienia OpenCloud

# Obraz Docker
# Produkcja:  opencloudeu/opencloud
# Rolling:    opencloudeu/opencloud-rolling
OC_DOCKER_IMAGE=opencloudeu/opencloud

# Tag wersji (zostaw puste = latest, lub np. "2" dla stabilnej gałęzi)
OC_DOCKER_TAG=2

# Główna domena OpenCloud
OC_DOMAIN=cloud.TWOJA.DOMENA

# Hasło administratora (ustawiane TYLKO przy pierwszym uruchomieniu!)
INITIAL_ADMIN_PASSWORD=TwojeBardzoBezpiecznHaslo!

# Katalogi danych (dla produkcji: zawsze ustaw lokalne ścieżki)
OC_CONFIG_DIR=/opt/opencloud/config
OC_DATA_DIR=/opt/opencloud/data

# Domyślny język interfejsu (ISO 639-1)
DEFAULT_LANGUAGE=pl

Ustawienia Collabora Online

COLLABORA_DOMAIN=collabora.TWOJA.DOMENA
WOPISERVER_DOMAIN=wopiserver.TWOJA.DOMENA
COLLABORA_ADMIN_USER=admin
COLLABORA_ADMIN_PASSWORD=TwojHasloCollabora!
COLLABORA_SSL_ENABLE=false          # false gdy używasz reverse proxy
COLLABORA_SSL_VERIFICATION=false    # false dla lokalnej komunikacji

Ustawienia S3 (opcjonalne)

# Dodaj do COMPOSE_FILE: storage/decomposeds3.yml
DECOMPOSEDS3_ENDPOINT=http://minio:9000
DECOMPOSEDS3_ACCESS_KEY_ID=minio
DECOMPOSEDS3_SECRET_ACCESS_KEY=minio-secret-key
DECOMPOSEDS3_BUCKET=opencloud

8. Wdrożenie z Traefik i Let’s Encrypt

To klasyczny sposób wdrożenia OpenCloud — Traefik działa jako reverse proxy, automatycznie pobierając certyfikaty SSL od Let’s Encrypt.

Krok 1: Skonfiguruj DNS

Zanim ruszysz dalej, upewnij się, że rekordy DNS wskazują na Twój serwer:

cloud.TWOJA.DOMENA        → A → IP_SERWERA
traefik.TWOJA.DOMENA      → A → IP_SERWERA

Krok 2: Edytuj .env

nano .env

Ustaw:

INSECURE=                          # zostaw puste (wyłączone)
COMPOSE_FILE=docker-compose.yml:traefik/opencloud.yml
OC_DOMAIN=cloud.TWOJA.DOMENA
TRAEFIK_DOMAIN=traefik.TWOJA.DOMENA
TRAEFIK_ACME_MAIL=twoj@email.com
TRAEFIK_ACME_CASERVER=https://acme-staging-v02.api.letsencrypt.org/directory
INITIAL_ADMIN_PASSWORD=TwojeHaslo!
OC_CONFIG_DIR=/opt/opencloud/config
OC_DATA_DIR=/opt/opencloud/data
OC_DOCKER_IMAGE=opencloudeu/opencloud
OC_DOCKER_TAG=2

Krok 3: Utwórz katalogi danych

sudo mkdir -p /opt/opencloud/{config,data}
sudo chown -R 1000:1000 /opt/opencloud

Krok 4: Uruchom testowo (staging SSL)

docker compose up -d

Sprawdź w przeglądarce https://cloud.TWOJA.DOMENA — powinna pojawić się strona z ostrzeżeniem o staging certyfikacie („Fake LE Intermediate X1”). To oznacza, że proces ACME działa prawidłowo.

Krok 5: Przełącz na produkcyjny SSL

docker compose down
rm -rf certs
nano .env
# Zakomentuj: # TRAEFIK_ACME_CASERVER=...
docker compose up -d

Odwiedź https://cloud.TWOJA.DOMENA — powinna pojawić się zielona kłódka z certyfikatem Let’s Encrypt.

Krok 6: Zaloguj się

Otwórz przeglądarkę i wejdź na https://cloud.TWOJA.DOMENA. Zaloguj się danymi:

  • Login: admin
  • Hasło: wartość z INITIAL_ADMIN_PASSWORD

9. Wdrożenie z Cloudflare Tunnels — krok po kroku

Cloudflare Tunnels (dawniej Argo Tunnel / cloudflared) to wyjątkowo elegancki sposób na udostępnienie OpenCloud w internecie bez otwierania portów na routerze czy firewallu. Tunel nawiązuje wychodzące połączenie HTTPS z siecią Cloudflare, przez które cały ruch jest przekazywany do Twoich kontenerów.

Zalety Cloudflare Tunnels dla OpenCloud

  • Brak konieczności otwierania portów 80/443 — idealne dla środowisk homelab, VPS za NAT, sieci korporacyjnych
  • Automatyczny SSL/TLS zarządzany przez Cloudflare — zero certyfikatów do konfigurowania
  • DDoS protection i WAF Cloudflare w cenie darmowego planu
  • Stabilne URL — nawet przy zmieniającym się IP serwera
  • Zero Trust Access — opcjonalna warstwa uwierzytelnienia przed OpenCloud
  • Brak limitów przepustowości na ruchu tunelowanym (fair-use policy)

Architektura

Użytkownik → Cloudflare Edge → cloudflared (tunel) → Docker Network → OpenCloud

OpenCloud w trybie external-proxy nasłuchuje wyłącznie na wewnętrznym porcie (domyślnie 9200), bez ekspozycji na zewnątrz. cloudflared łączy Cloudflare z tym portem.


Krok 1: Przygotowanie domeny w Cloudflare

  1. Zaloguj się do dash.cloudflare.com
  2. Upewnij się, że Twoja domena jest zarządzana przez Cloudflare (nameservery wskazują na Cloudflare)
  3. Przejdź do: Zero TrustNetworksTunnels
  4. Kliknij Create a tunnel
  5. Wybierz typ: Cloudflared
  6. Nadaj tunelowi nazwę, np. opencloud
  7. Wybierz Debian (serwery ubuntu oraz debian). Skopiuj wygenerowany token tunelu i uruchom na serwerze
  8. Po podłączeniu Connectors, przejdź do kolejnej strony
  9. Wpisz subdomene np. opencloud, wybierz swoją domenę. Wybierz HTTPS oraz podaj adres IP Twojego serwera Open CLoud. Przejdź do sekcji TLS włącz No TLS verify oraz kliknij Complete setup na samym dole strony


Krok 2: Konfiguracja pliku .env dla external-proxy

Otwórz plik .env i ustaw tryb external-proxy:

nano .env

Kluczowe ustawienia:

# Wyłącz insecure mode (cloudflare zapewnia SSL)
INSECURE=

# Użyj modułu external-proxy
COMPOSE_FILE=docker-compose.yml:external-proxy/opencloud.yml

# Domena OpenCloud (musi być taka sama jak skonfigurowana w tunelu Cloudflare)
OC_DOMAIN=cloud.TWOJA.DOMENA

# Hasło admina
INITIAL_ADMIN_PASSWORD=TwojeBardzoBezpieczneHaslo123!

# Katalogi danych
OC_CONFIG_DIR=/opt/opencloud/config
OC_DATA_DIR=/opt/opencloud/data

# Stabilny obraz produkcyjny
OC_DOCKER_IMAGE=opencloudeu/opencloud
OC_DOCKER_TAG=2

Krok 3: Konfiguracja dla Collabora (opcjonalna)

Jeśli chcesz uruchomić edycję dokumentów przez Collabora Online, dodaj do COMPOSE_FILE:

COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:external-proxy/opencloud.yml:external-proxy/collabora.yml:cloudflare/tunnel.yml

Skonfiguruj dodatkowe domeny w .env:

COLLABORA_DOMAIN=collabora.TWOJA.DOMENA
WOPISERVER_DOMAIN=wopiserver.TWOJA.DOMENA
COLLABORA_SSL_ENABLE=false
COLLABORA_SSL_VERIFICATION=false

Dodaj kolejne Public Hostnames w Cloudflare Zero Trust:

SubdomainDomainTypeURL
collaboraTWOJA.DOMENAHTTPcollabora:9980
wopiserverTWOJA.DOMENAHTTPwopiserver:8880

Krok 4: Utwórz katalogi i uruchom

# Utwórz katalogi danych
sudo mkdir -p /opt/opencloud/{config,data}
sudo chown -R 1000:1000 /opt/opencloud

# Uruchom stack
docker compose up -d

Sprawdź, czy wszystkie kontenery działają:

docker compose ps

Powinieneś zobaczyć statusy Up lub healthy dla:

  • opencloud
  • opencloud-idm (wbudowany LDAP)
  • cloudflared

Krok 5: Weryfikacja połączenia

Odwiedź https://opencloud.TWOJA.DOMENA w przeglądarce. Certyfikat SSL powinien być wystawiony przez Cloudflare — brak ostrzeżeń.

Dashboard Open Cloud:


Rozwiązywanie problemów z Cloudflare Tunnels

Problem: „502 Bad Gateway” po wejściu na domenę

Sprawdź, czy kontener OpenCloud nasłuchuje na właściwym porcie:

docker compose exec opencloud sh -c "ss -tlnp | grep 9200"

Upewnij się, że URL w konfiguracji tunelu to opencloud:9200 i że obie usługi są w tej samej sieci Docker.

Problem: Tunel nie łączy się z Cloudflare

Sprawdź logi cloudflared:

docker compose logs cloudflared

Zweryfikuj token — skopiuj go ponownie z dashboardu Cloudflare i aktualizuj .env.

Problem: Błędy CORS lub „invalid host”

Upewnij się, że OC_DOMAIN w pliku .env dokładnie odpowiada domenie skonfigurowanej w Cloudflare Public Hostname. Domena musi być bez https:// i bez trailing slash.


Opcjonalnie: Cloudflare Access (Zero Trust przed OpenCloud)

Możesz dodatkowo zabezpieczyć OpenCloud za pomocą Cloudflare Access — warstwy uwierzytelnienia (email OTP, GitHub SSO, Google SSO) przed dotarciem do aplikacji:

  1. Cloudflare Zero Trust → AccessApplicationsAdd an application
  2. Wybierz Self-hosted
  3. Skonfiguruj domenę cloud.TWOJA.DOMENA
  4. Dodaj politykę dostępu (np. dozwolone emaile z Twojej domeny)
  5. Wybierz metodę uwierzytelniania (Email OTP, GitHub, Google)

Cloudflare Access sprawdza tożsamość użytkownika zanim w ogóle request dotrze do OpenCloud — idealne jako pierwsza linia obrony.


10. Konfiguracja Collabora Online

Collabora Online to serwer edycji dokumentów oparty na LibreOffice, działający w przeglądarce. Umożliwia edycję plików .docx, .xlsx, .pptx bezpośrednio w interfejsie OpenCloud.

Konfiguracja z Traefik

COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:traefik/opencloud.yml:traefik/collabora.yml
COLLABORA_DOMAIN=collabora.TWOJA.DOMENA
WOPISERVER_DOMAIN=wopiserver.TWOJA.DOMENA
COLLABORA_ADMIN_USER=admin
COLLABORA_ADMIN_PASSWORD=BezpieczneHasloAdmin!
COLLABORA_SSL_ENABLE=false
COLLABORA_SSL_VERIFICATION=false

Konfiguracja z External Proxy

COMPOSE_FILE=docker-compose.yml:weboffice/collabora.yml:external-proxy/opencloud.yml:external-proxy/collabora.yml

Panel administracyjny Collabora

Po uruchomieniu panel administracyjny Collabora dostępny jest pod adresem:

https://collabora.TWOJA.DOMENA/browser/dist/admin/admin.html

Zaloguj się danymi z COLLABORA_ADMIN_USER i COLLABORA_ADMIN_PASSWORD.


11. Produkcyjne katalogi danych i uprawnienia

Domyślnie OpenCloud przechowuje dane w wewnętrznych woluminach Docker. Nie jest to zalecane na produkcji — usunięcie kontenerów skutkuje utratą danych.

Ustawienie trwałych katalogów

# Utwórz katalogi
sudo mkdir -p /opt/opencloud/{config,data}

# Nadaj uprawnienia dla użytkownika 1000:1000 (domyślny UID w kontenerze)
sudo chown -R 1000:1000 /opt/opencloud

W pliku .env:

OC_CONFIG_DIR=/opt/opencloud/config
OC_DATA_DIR=/opt/opencloud/data

Ostrzeżenie bezpieczeństwa

Użytkownik z UID 1000 na hoście ma pełny dostęp do tych katalogów. W środowiskach wieloużytkownikowych upewnij się, że właściwie zarządzasz dostępem do tych ścieżek.

Backup danych

Prosty skrypt do tworzenia kopii zapasowej:

#!/bin/bash
BACKUP_DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR=/backup/opencloud

docker compose down

tar -czf ${BACKUP_DIR}/opencloud_config_${BACKUP_DATE}.tar.gz /opt/opencloud/config
tar -czf ${BACKUP_DIR}/opencloud_data_${BACKUP_DATE}.tar.gz /opt/opencloud/data

docker compose up -d

echo "Backup ukończony: ${BACKUP_DATE}"

12. Aktualizacja OpenCloud

Aktualizacja przy użyciu rolling tag

Jeśli używasz OC_DOCKER_TAG= (latest), aktualizacja przebiega następująco:

cd opencloud-compose
git pull
docker compose pull
docker compose up -d

Aktualizacja przy użyciu konkretnej wersji

Zmień OC_DOCKER_TAG w .env na nową wersję, następnie:

docker compose pull
docker compose up -d

Sprawdzenie wersji

docker compose exec opencloud opencloud version

13. Troubleshooting — najczęstsze problemy

Kontenery restartują się w nieskończoność

Sprawdź logi:

docker compose logs opencloud
docker compose logs opencloud-idm

Najczęstsza przyczyna: INITIAL_ADMIN_PASSWORD nie zostało ustawione lub zawiera znaki specjalne wymagające escapowania. Użyj wartości w cudzysłowie w .env: INITIAL_ADMIN_PASSWORD="Haslo!@#".

Błąd certyfikatu SSL

Upewnij się, że:

  • Rekordy DNS zostały zaktualizowane i propagacja zakończyła się (sprawdź: dig cloud.TWOJA.DOMENA)
  • Porty 80 i 443 są otwarte na serwerze
  • Firewall (ufw) nie blokuje ruchu: ufw allow 80/tcp && ufw allow 443/tcp

Brak dostępu do panelu Traefik

Dashboard jest domyślnie wyłączony. Ustaw:

TRAEFIK_DASHBOARD=true
TRAEFIK_BASIC_AUTH_USERS=admin:$$2y$$05$$...   # wygenerowane przez htpasswd

Problemy z uprawnieniami do katalogów

sudo chown -R 1000:1000 /opt/opencloud
sudo chmod -R 750 /opt/opencloud

OpenCloud nie zapamiętuje zmian hasła admina

INITIAL_ADMIN_PASSWORD działa tylko przy pierwszym uruchomieniu. Po pierwszym starcie zmień hasło przez panel użytkownika lub za pomocą CLI:

docker compose exec opencloud opencloud idm change-password \
  --idm-admin-password "LDAP_BIND_PASSWORD" \
  --user admin \
  --password "NoweHaslo!"

14. FAQ — najczęściej zadawane pytania

Q: Czy OpenCloud jest darmowy?

Tak, OpenCloud jest open-source i dostępny bezpłatnie na licencji Apache 2.0. Firma Heinlein Gruppe oferuje komercyjne wsparcie dla wdrożeń enterprise.

Q: Czy mogę migrować z Nextcloud do OpenCloud?

Bezpośrednia migracja danych (pliki) jest możliwa przez WebDAV lub bezpośrednie przeniesienie plików. Konfiguracje, wtyczki i ustawienia Nextcloud nie są kompatybilne i wymagają ponownej konfiguracji.

Q: Czy Cloudflare Tunnels są bezpieczne dla wrażliwych danych?

Ruch przechodzi przez infrastrukturę Cloudflare, co oznacza, że Cloudflare technicznie może odszyfrować ruch na swoich serwerach brzegowych. Dla organizacji z rygorystycznymi wymogami prywatności lepszym rozwiązaniem jest bezpośredni Traefik z Let’s Encrypt lub własny CA.

Q: Ile użytkowników obsługuje OpenCloud?

Zależy od specyfikacji serwera. Na serwerze 4 vCPU / 8 GB RAM OpenCloud komfortowo obsługuje 50–100 aktywnych użytkowników. Z Collabora Online limit spada do ~20–30 jednoczesnych sesji edycji na takim samym sprzęcie.

Q: Czy mogę używać OpenCloud bez domeny, lokalnie?

Tak — ustaw INSECURE=true w .env i uruchom bez modułów Traefik. OpenCloud będzie dostępny przez HTTP na porcie 9200 (lub skonfigurowanym). Dla certyfikatów lokalnych użyj mkcert i modułu TRAEFIK_SERVICES_TLS_CONFIG="tls=true" z własnym certyfikatem.

Q: Jak skonfigurować klienta desktopowego OpenCloud?

Pobierz klienta OpenCloud (kompatybilny z ownCloud/Nextcloud) i skonfiguruj:

  • Adres serwera: https://cloud.TWOJA.DOMENA
  • Login: admin (lub nazwa użytkownika)
  • Hasło: ustawione w INITIAL_ADMIN_PASSWORD

Q: Co to jest WOPI i po co mi ten subdomain?

WOPI (Web Application Open Platform Interface) to protokół umożliwiający Collabora Online komunikację z OpenCloud w celu otwierania i zapisywania dokumentów. wopiserver.TWOJA.DOMENA musi być dostępny zarówno z zewnątrz (dla przeglądarki użytkownika), jak i wewnątrz sieci Docker.


Podsumowanie

OpenCloud to kompletna, nowoczesna platforma do prywatnej chmury, która dzięki architekturze opartej na Go i natywnej konteneryzacji wyprzedza technologicznie swoich konkurentów. Docker Compose z modularnym systemem plików konfiguracyjnych umożliwia elastyczne wdrożenia — od prostych instalacji domowych po rozbudowane środowiska enterprise z Keycloak, S3 i skanowaniem antywirusowym.

Cloudflare Tunnels stanowią szczególnie atrakcyjną opcję dla wdrożeń w sieci domowej lub za NAT — eliminują konieczność otwierania portów, zapewniają automatyczny SSL i integrację z warstwą ochrony DDoS Cloudflare, bez żadnych kosztów.

Najważniejsze kroki do zapamiętania:

  • Zawsze ustaw OC_CONFIG_DIR i OC_DATA_DIR na lokalne ścieżki w środowisku produkcyjnym
  • Testuj z certyfikatami staging Let’s Encrypt przed przejściem na produkcję
  • Przy Cloudflare Tunnels użyj external-proxy/opencloud.yml i type HTTP w konfiguracji tunelu
  • INITIAL_ADMIN_PASSWORD ustawiaj tylko raz — przed pierwszym uruchomieniem

Bezpłatne warsztaty: Kali Linux od podstaw - fundament pracy pentestera

Naucz się instalacji i konfiguracji Kali Linux, pracy w terminalu, zarządzania uprawnieniami, budowy własnego laboratorium pentestowego oraz korzystania z narzędzi używanych przez specjalistów cyberbezpieczeństwa.

Odbierz dostęp do 13 maja do 23:59

Sprawdź szczegóły: https://asdevops.pl/warsztaty/

 

 

 

 

Bezpłatne szkolenie "Kali Linux od podstaw - fundament pracy pentestera"

X