Бързо и лесно инсталиране на Nextcloud чрез Docker Compose в Ubuntu 24.04

В тази статия ще ви преведем стъпка по стъпка през процеса на инсталиране на Nextcloud с помощта на Docker Compose в Ubuntu 24.04. Този метод е идеален за начинаещи, тъй като автоматизира много от сложните аспекти на настройката, позволявайки ви да стартирате личния си облак за минути.
Какво е Nextcloud?
Nextcloud е мощна платформа с отворен код за съхранение, споделяне и синхронизиране на файлове. Тя предлага алтернатива на популярните облачни услуги като Dropbox, Google Drive и OneDrive, но с пълна контролираност на вашите данни. Nextcloud включва и множество допълнителни функции като календар, контакти, видеочатове и дори офис приложения.
Какво е Docker?
Docker е платформа за контейнеризация, която позволява изпълнението на приложения в изолирани среди, наречени контейнери. Тези контейнери са леки, преносими и съдържат всичко необходимо за работа на приложението – код, системни инструменти, библиотеки и настройки.
Какво е Docker Compose?
Docker Compose е инструмент за дефиниране и управление на многоконтейнерни Docker приложения. С помощта на YAML файл (docker-compose.yml) можете да конфигурирате всички услуги, мрежи и томове, необходими за вашето приложение, и да ги стартирате с една команда.
Предварителни изисквания
Преди да започнете, ще ви трябва:
- Ubuntu 24.04 сървър с root достъп
- Минимум 2GB RAM (4GB препоръчително)
- Минимум 20GB дисково пространство
- Интернет връзка
Стъпка 1: Инсталиране на Docker и Docker Compose
Първо, нека инсталираме необходимите пакети.
- Обновете системните пакети:
sudo apt update && sudo apt upgrade -y2. Изтеглете скрипта
curl -fsSL https://get.docker.com -o install-docker.sh
3. Стартирайте скрипта
sudo sh install-docker.shСтъпка 2: Подготовка на средата за Nextcloud
- Създайте директория за вашия Nextcloud проект (можете да изберете друго име вместо "nex"):
mkdir -p /root/nex/db
mkdir -p /root/nex/htmlСтъпка 3: Създаване на docker-compose.yml файл
- Създайте нов файл docker-compose.yml:
nano /root/nex/docker-compose.ymlКопирайте следния конфигурационен код, като замените "yourdomain.com" с вашия домейн (или IP адрес, ако нямате домейн):
version: '3'
services:
db:
image: mariadb:10.6
restart: always
volumes:
- /root/nex/db:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: rootpass
MYSQL_PASSWORD: cloudpass
MYSQL_DATABASE: nextcloud
MYSQL_USER: nextcloud
redis:
image: redis:alpine
restart: always
app:
image: nextcloud:26.0.3-apache
restart: always
ports:
- 8080:80
volumes:
- /root/nex/html:/var/www/html
environment:
MYSQL_PASSWORD: cloudpass
MYSQL_DATABASE: nextcloud
MYSQL_USER: nextcloud
MYSQL_HOST: db
REDIS_HOST: redis
OVERWRITEPROTOCOL: https
depends_on:
- db
- redis
cron:
image: nextcloud:26.0.3-apache
restart: always
volumes:
- /root/nex/html:/var/www/html
entrypoint: /cron.sh
depends_on:
- app- Запазете файла (Ctrl+O, Enter) и излезте от nano (Ctrl+X).
Естествено, можете да промените порта: ports: – 8080:80 ,
примерно на ports: – 8586:80
Стъпка 4: Стартиране на Nextcloud контейнерите
- Навигирайте до директорията на проекта:
cd /root/nexСтартирайте контейнерите в режим на демон (на заден план):
docker-compose up -dПроверете статуса на контейнерите:
docker-compose psТрябва да видите три работещи контейнера: db, redis и app.
Стъпка 5: Достъп до Nextcloud през браузър
Отворете вашия браузър и навигирайте до:
http://вашият_сървър_IP:8080или, ако сте конфигурирали домейн ( за предпочитане ):
http://вашият_домейн:8080Трябва да видите началната страница на Nextcloud, където можете да създадете администраторски акаунт.
Стъпка 6: Настройка на Nextcloud
Първо, инсталирайте текстовия редактор nano (ако не е инсталиран):
docker exec -it nex_app_1 apt update
docker exec -it nex_app_1 apt install -y nanoРедактирайте config.php файла:
docker exec -it nex_app_1 nano /var/www/html/config/config.phpДобавете или модифицирайте следните настройки (между '); и ?>) , ако е необходимо:
'trusted_domains' =>
array (
0 => 'localhost',
1 => 'вашият_домейн',
2 => 'вашият_IP',
),
'overwrite.cli.url' => 'https://вашият_домейн',
'overwritehost' => 'вашият_домейн',
'overwriteprotocol' => 'https',
'default_phone_region' => 'BG',
'mail_smtpmode' => 'smtp',
'mail_smtpauthtype' => 'LOGIN',
'mail_from_address' => 'nextcloud',
'mail_domain' => 'вашият_домейн',
'mail_smtphost' => '',
'mail_smtpport' => '',
'mail_smtpname' => '',
'mail_smtppassword' => '',
'maintenance' => false,
'memcache.local' => '\\OC\\Memcache\\Redis',
'memcache.locking' => '\\OC\\Memcache\\Redis',
'redis' =>
array (
'host' => 'redis',
'port' => 6379,
),- Запазете промените (Ctrl+O, Enter) и излезте от nano (Ctrl+X).
- Рестартирайте Nextcloud контейнера:
docker-compose restart appСтъпка 8: Допълнителни препоръки
- SSL сертификат: Използвайте Let's Encrypt за безплатен SSL сертификат. Можете да използвате Nginx като reverse proxy.
- Резервни копия: Редовно правете резервни копия на вашите данни:
/root/nex/db– съдържа MariaDB данните/root/nex/html– съдържа Nextcloud файловете и конфигурациите
- Обновления: Редовно обновявайте вашите Docker образи:
docker-compose pull
docker-compose up -dЗаключение
Чрез тази стъпка по стъпка инструкция, вие успешно инсталирахте Nextcloud с Docker Compose на Ubuntu 24.04. Този метод предлага няколко предимства:
- Изолиране: Nextcloud и неговите зависимости са изолирани в контейнери
- Лесни обновления: Можете лесно да обновявате Nextcloud чрез Docker образи
- Преносимост: Конфигурацията може да бъде пренесена на друг сървър с минимални усилия
- Автоматично възстановяване: Контейнерите се рестартират автоматично при проблеми
След като вашият Nextcloud е работещ, можете да разгледате неговите многочислени приложения и функции, които могат да заменят много популярни онлайн услуги, като същевременно запазвате вашите данни под ваш контрол.

