bolt Valebyte VPS від $4/міс — NVMe, запуск за 60 секунд.

Отримати VPS arrow_forward
eco Початковий Туторіал

Встановлення Dolibarr ERP

calendar_month Aug 15, 2026 schedule 18 хв. читання visibility 23 переглядів
Установка Dolibarr ERP/CRM на VPS: Nginx, PostgreSQL и Let's Encrypt
info

Потрібен сервер для цього гайду? Ми пропонуємо виділені сервери та VPS у 50+ країнах з миттєвим налаштуванням.

Потрібен сервер для цього гайду?

Розгорніть VPS або виділений сервер за хвилини.

Встановлення Dolibarr ERP/CRM на VPS: Nginx, PostgreSQL та Let's Encrypt

TL;DR

У цьому детальному посібнику ми крок за кроком налаштуємо Dolibarr ERP/CRM — потужну систему для управління бізнесом — на власному віртуальному або виділеному сервері (VPS/dedicated). Ми розгорнемо Dolibarr версії 20.0 (актуальна на 2026 рік) з використанням Nginx як веб-сервера, PostgreSQL для бази даних та забезпечимо безпечне HTTPS-з'єднання через Let's Encrypt. Це дозволить вам отримати повний контроль над вашою бізнес-інфраструктурою, забезпечити високу продуктивність та захист даних.

  • Dolibarr ERP/CRM версії 20.0 буде встановлено на VPS з Nginx та PostgreSQL.
  • Буде налаштовано безпечний доступ по HTTPS за допомогою безкоштовних сертифікатів Let's Encrypt.
  • Ви отримаєте повністю функціональну систему для управління продажами, проєктами, запасами та фінансами.
  • Посібник включає команди для Ubuntu 24.04 LTS, актуальні на 2026 рік.
  • Описано кроки з підготовки сервера, встановлення ПЗ, конфігурації, резервного копіювання та усунення типових проблем.

Що ми налаштовуємо і навіщо

Схема: Що ми налаштовуємо і навіщо
Схема: Що ми налаштовуємо і навіщо

У цьому посібнику ми зосередимося на встановленні та налаштуванні Dolibarr ERP/CRM — комплексної системи для управління ресурсами підприємства (ERP) та взаємовідносинами з клієнтами (CRM). Dolibarr є веб-додатком, який дозволяє малим та середнім підприємствам (SMB), фрилансерам та асоціаціям ефективно управляти різними аспектами їхньої діяльності.

Після завершення налаштування ви отримаєте повністю функціональну платформу, здатну обробляти:

  • Управління продажами: комерційні пропозиції, замовлення клієнтів, рахунки, відвантаження.
  • Управління проєктами: завдання, часові витрати, планування.
  • Управління запасами: продукти, послуги, складський облік.
  • Фінанси: банківські рахунки, платежі, витрати, звіти.
  • Взаємовідносини з клієнтами: контакти, сторонні компанії, історія взаємодій.
  • Маркетинг: розсилки, кампанії.

Dolibarr — це потужна альтернатива пропрієтарним рішенням, таким як SAP Business One або Odoo (у їхніх безкоштовних або базових версіях), що пропонує гнучкість та повний контроль над даними. Встановлення на власному VPS дає низку переваг порівняно з хмарними (cloud-managed) сервісами:

  • Повний контроль над даними: Ваші дані зберігаються на вашому сервері, а не у стороннього провайдера, що є критичним для конфіденційності та відповідності нормативам (наприклад, GDPR).
  • Гнучкість та кастомізація: Ви можете встановлювати будь-які модулі, вносити зміни в код (якщо це необхідно) та адаптувати систему під унікальні бізнес-процеси без обмежень SaaS-платформ.
  • Економія коштів у довгостроковій перспективі: Хоча початкове налаштування вимагає часу, відсутність щомісячної абонентської плати за користувача або за функціонал може значно знизити операційні витрати для зростаючих команд.
  • Оптимізація продуктивності: Ви можете вибрати сервер, який ідеально відповідає вашим потребам, та оптимізувати його для максимальної продуктивності Dolibarr, не залежно від "сусідів" по хмарі.
  • Незалежність від постачальника: Ви не прив'язані до одного провайдера і можете легко мігрувати Dolibarr на інший сервер або хостинг за необхідності.

Цей туторіал призначений для тих, хто шукає надійне, контрольоване та масштабоване рішення для управління своїм бізнесом, віддаючи перевагу самостійному розгортанню на VPS.

Який VPS-конфіг потрібен для цього завдання

Схема: Який VPS-конфіг потрібен для цього завдання
Схема: Який VPS-конфіг потрібен для цього завдання

Вибір відповідного VPS-конфігу є критичним для забезпечення стабільної та швидкої роботи Dolibarr. Вимоги до ресурсів залежать від кількості користувачів, обсягу даних та інтенсивності використання системи. Dolibarr, Nginx, PostgreSQL та PHP-FPM — це досить ресурсоємний стек, тому економити на базових характеристиках не варто.

Мінімальні вимоги (для 1-5 користувачів)

  • CPU: 2 ядра x86-64 (сучасні процесори Intel Xeon E3/E5 або AMD EPYC).
  • RAM: 4 GB DDR4. Цього достатньо для роботи PostgreSQL, PHP-FPM та Nginx з невеликим обсягом даних та невеликим навантаженням.
  • Диск: 80 GB SSD NVMe. Для бази даних, файлів Dolibarr та операційної системи. NVMe SSD значно покращує продуктивність операцій вводу-виводу, що є критичним для баз даних.
  • Мережа: 100 Mbps (гарантований канал). Для стабільного доступу користувачів та резервного копіювання.

Рекомендований VPS-план (для 5-20 користувачів або активного використання)

Для більш активного використання Dolibarr, підтримки більшої кількості користувачів або при планах на розширення функціоналу, рекомендується наступний конфіг:

  • CPU: 4 ядра x86-64.
  • RAM: 8 GB DDR4.
  • Диск: 160-240 GB SSD NVMe.
  • Мережа: 1 Gbps (гарантований канал).

Для оренди VPS із зазначеними характеристиками, ви можете розглянути варіанти, що пропонують гнучкі тарифи та надійну інфраструктуру.

Коли потрібен dedicated, а не VPS

Виділений сервер (dedicated server) стає кращим за VPS у таких випадках:

  • Велика кількість користувачів: Якщо у вас понад 50 активних користувачів або тисячі транзакцій на день, ресурси VPS можуть стати вузьким місцем.
  • Високе навантаження на базу даних: При дуже великих базах даних (сотні гігабайт) або складних запитах, dedicated сервер з потужними CPU та великим обсягом RAM (наприклад, 32 GB+) забезпечить кращу продуктивність.
  • Підвищені вимоги до безпеки та ізоляції: Dedicated сервер забезпечує повну фізичну ізоляцію, що може бути критичним для певних видів даних або аудитів безпеки.
  • Необхідність спеціального обладнання: Якщо вам потрібні специфічні апаратні компоненти (наприклад, апаратні RAID-контролери, GPU для інших завдань) або ви хочете повний контроль над апаратним забезпеченням.
  • Запуск багатьох сервісів: Якщо крім Dolibarr ви плануєте розміщувати інші вимогливі додатки або мікросервіси.

У таких сценаріях, відповідний dedicated сервер може бути більш виправданим вибором, незважаючи на вищу вартість.

Локація: на що впливає

Вибір локації сервера впливає на кілька факторів:

  • Затримка (Latency): Чим ближче сервер до вашої основної аудиторії (користувачів Dolibarr), тим нижча затримка та швидша відповідь системи. Для локальних команд вибирайте сервер у вашій країні або сусідньому регіоні.
  • Відповідність законодавству: Деякі галузі або країни вимагають зберігання даних у певній юрисдикції. Переконайтеся, що вибрана локація відповідає цим вимогам.
  • Вартість: Ціни на VPS/dedicated сервери можуть варіюватися залежно від локації через різну вартість електроенергії, каналів зв'язку та податків.
  • Надійність та доступність: Вибирайте провайдерів з дата-центрами в регіонах з високою доступністю та надійною інфраструктурою.

Підготовка сервера

Схема: Підготовка сервера
Схема: Підготовка сервера

Перед встановленням Dolibarr необхідно виконати базове налаштування свіжого VPS, щоб забезпечити безпеку та стабільність роботи. Ми будемо використовувати операційну систему Ubuntu 24.04 LTS (Noble Numbat), актуальну на 2026 рік.

1. Підключення по SSH

Використовуйте SSH-клієнт для підключення до вашого сервера. Замініть your_user на ім'я користувача (зазвичай root або надане провайдером) та your_vps_ip на IP-адресу вашого VPS.


ssh your_user@your_vps_ip

2. Оновлення системи

Завжди починайте з оновлення списку пакетів та їх встановлення, щоб переконатися, що у вас найсвіжіші версії ПЗ та патчі безпеки.


sudo apt update && sudo apt upgrade -y

3. Створення нового користувача з правами sudo (якщо ви увійшли як root)

Робота під користувачем root небезпечна. Створіть нового користувача та надайте йому права sudo.


sudo adduser dolibarruser # Створюємо нового користувача
sudo usermod -aG sudo dolibarruser # Додаємо користувача в групу sudo

Тепер вийдіть з поточної сесії root та увійдіть під новим користувачем.


exit
ssh dolibarruser@your_vps_ip

4. Налаштування SSH-ключів для безпарольного входу

Це підвищує безпеку та зручність. Згенеруйте ключі на вашій локальній машині, якщо їх немає:


ssh-keygen -t rsa -b 4096

Скопіюйте публічний ключ на сервер:


ssh-copy-id dolibarruser@your_vps_ip

Після перевірки, вимкніть вхід за паролем для SSH (рекомендується). Відредагуйте файл /etc/ssh/sshd_config:


sudo nano /etc/ssh/sshd_config

Знайдіть та змініть наступні рядки:


#PasswordAuthentication yes
PasswordAuthentication no
#PermitRootLogin prohibit-password
PermitRootLogin no

Перезапустіть SSH-сервіс:


sudo systemctl restart sshd

5. Встановлення та налаштування міжмережевого екрана (UFW)

UFW (Uncomplicated Firewall) — це простий у використанні інтерфейс для iptables. Дозвольте лише необхідні порти.


sudo apt install ufw -y # Встановлюємо UFW
sudo ufw default deny incoming # Забороняємо всі вхідні за замовчуванням
sudo ufw default allow outgoing # Дозволяємо всі вихідні за замовчуванням
sudo ufw allow OpenSSH # Дозволяємо SSH (порт 22)
sudo ufw allow http # Дозволяємо HTTP (порт 80)
sudo ufw allow https # Дозволяємо HTTPS (порт 443)
sudo ufw enable # Включаємо UFW (підтвердіть 'y')
sudo ufw status # Перевіряємо статус

6. Встановлення Fail2Ban

Fail2Ban захищає ваш сервер від атак методом перебору, блокуючи IP-адреси, які роблять занадто багато невдалих спроб входу.


sudo apt install fail2ban -y # Встановлюємо Fail2Ban
sudo systemctl enable fail2ban # Включаємо автозапуск
sudo systemctl start fail2ban # Запускаємо сервіс
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local # Створюємо локальний конфіг
sudo nano /etc/fail2ban/jail.local # Редагуємо конфіг

У файлі jail.local переконайтеся, що секція [sshd] активна та налаштована:


[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 1h

Перезапустіть Fail2Ban:


sudo systemctl restart fail2ban

Встановлення ПЗ — покроково

Схема: Встановлення ПЗ — покроково
Схема: Встановлення ПЗ — покроково

Тепер, коли сервер підготовлено, приступимо до встановлення основних компонентів: Nginx, PostgreSQL, PHP-FPM та самого Dolibarr. Ми будемо використовувати актуальні версії ПЗ на 2026 рік, припускаючи, що Ubuntu 24.04 LTS є стабільною базою.

1. Встановлення Nginx (веб-сервер)

Nginx виступатиме в ролі високопродуктивного веб-сервера для Dolibarr.


sudo apt install nginx -y # Встановлюємо Nginx
sudo systemctl enable nginx # Вмикаємо автозапуск Nginx
sudo systemctl start nginx # Запускаємо Nginx

Перевірте статус Nginx:


sudo systemctl status nginx

2. Встановлення PostgreSQL (сервер баз даних)

Dolibarr може працювати з MySQL/MariaDB, але PostgreSQL часто обирають за його надійність та продуктивність для складних застосунків.


sudo apt install postgresql postgresql-contrib -y # Встановлюємо PostgreSQL та додаткові утиліти
sudo systemctl enable postgresql # Вмикаємо автозапуск PostgreSQL
sudo systemctl start postgresql # Запускаємо PostgreSQL

3. Створення бази даних та користувача PostgreSQL для Dolibarr

Переключіться на користувача postgres для створення бази даних та користувача.


sudo -i -u postgres # Переключаємося на користувача postgres
createuser --pwprompt dolibarruserdb # Створюємо користувача бази даних та встановлюємо пароль (запам'ятайте його!)
createdb -O dolibarruserdb dolibarrdb # Створюємо базу даних 'dolibarrdb' та призначаємо власника
exit # Повертаємося до вашого sudo-користувача

4. Встановлення PHP-FPM та необхідних розширень

Dolibarr написаний на PHP. Ми будемо використовувати PHP-FPM (FastCGI Process Manager) для обробки PHP-скриптів, що забезпечує кращу продуктивність та безпеку.


sudo apt install php8.4-fpm php8.4-pgsql php8.4-gd php8.4-curl php8.4-xml php8.4-mbstring php8.4-zip php8.4-intl php8.4-soap -y # Встановлюємо PHP 8.4 FPM та розширення (актуально на 2026 рік)
sudo systemctl enable php8.4-fpm # Вмикаємо автозапуск PHP-FPM
sudo systemctl start php8.4-fpm # Запускаємо PHP-FPM

5. Завантаження та встановлення Dolibarr

Ми завантажимо останню стабільну версію Dolibarr (наприклад, 20.0) з офіційного GitHub-репозиторію або SourceForge. Переконайтеся, що ви використовуєте актуальне посилання для 2026 року.


cd /tmp # Переходимо до тимчасової директорії
wget https://github.com/Dolibarr/dolibarr/releases/download/20.0.0/dolibarr-20.0.0.tgz # Завантажуємо архів Dolibarr 20.0.0 (приклад версії на 2026)
sudo tar -xzf dolibarr-20.0.0.tgz -C /opt/ # Розпаковуємо архів до /opt/
sudo mv /opt/dolibarr-20.0.0 /opt/dolibarr # Перейменовуємо директорію для зручності
sudo mkdir /var/www/dolibarr # Створюємо директорію для веб-доступу
sudo mv /opt/dolibarr/htdocs/ /var/www/dolibarr/ # Переміщуємо файли Dolibarr до веб-директорії
sudo mkdir /var/lib/dolibarr/documents # Створюємо директорію для документів Dolibarr поза веб-доступом
sudo chown -R www-data:www-data /var/www/dolibarr /var/lib/dolibarr/documents # Встановлюємо правильні права доступу
sudo chmod -R 750 /var/www/dolibarr /var/lib/dolibarr/documents # Встановлюємо права на читання/запис

У Dolibarr є спеціальна директорія documents, яка має бути доступна для запису веб-сервером, але не повинна бути доступна безпосередньо з браузера. Ми розміщуємо її поза директорією веб-сервера для безпеки.

Конфігурація

Схема: Конфігурація
Схема: Конфігурація

Після встановлення всіх компонентів необхідно їх правильно налаштувати. Це включає Nginx для обслуговування Dolibarr, PHP-FPM для обробки скриптів та забезпечення HTTPS-з'єднання за допомогою Let's Encrypt.

1. Налаштування Nginx для Dolibarr

Створіть новий файл конфігурації Nginx для вашого домену (наприклад, yourdomain.com). Замініть yourdomain.com на ваш реальний домен.


sudo nano /etc/nginx/sites-available/dolibarr.conf

Вставте наступний вміст:


server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;
    root /var/www/dolibarr;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.4-fpm.sock; # Переконайтеся, що це правильна версія PHP
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    # Забороняємо доступ до конфіденційних файлів Dolibarr
    location ~ /(build|config|data|docs|install|lib|locale|sql|test)/ {
        deny all;
    }
    location ~ /\.ht {
        deny all;
    }
    location ~ \.log$ {
        deny all;
    }
    location ~ \.sql$ {
        deny all;
    }
    location ~ \.conf$ {
        deny all;
    }
    location ~ \.ini$ {
        deny all;
        # Забороняємо також .env файли, якщо вони використовуються для секретів
    }
}

Створіть символічне посилання на цей файл у sites-enabled та видаліть дефолтний конфіг Nginx:


sudo ln -s /etc/nginx/sites-available/dolibarr.conf /etc/nginx/sites-enabled/
sudo rm /etc/nginx/sites-enabled/default # Видаляємо дефолтний конфіг Nginx
sudo nginx -t # Перевіряємо синтаксис конфігу Nginx
sudo systemctl restart nginx # Перезапускаємо Nginx

2. Налаштування PHP-FPM

Іноді потрібно збільшити ліміти пам'яті та часу виконання для PHP. Відредагуйте файл php.ini для PHP 8.4 FPM:


sudo nano /etc/php/8.4/fpm/php.ini

Знайдіть та змініть наступні параметри:


memory_limit = 256M # Або вище, якщо у вас багато RAM та користувачів
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
date.timezone = Europe/Moscow # Або ваш часовий пояс

Перезапустіть PHP-FPM для застосування змін:

sudo systemctl restart php8.4-fpm

3. Отримання SSL-сертифіката з Let's Encrypt (Certbot)

HTTPS є обов'язковим для будь-якого сучасного веб-застосунку. Certbot автоматизує отримання та встановлення сертифікатів Let's Encrypt.


sudo apt install certbot python3-certbot-nginx -y # Встановлюємо Certbot для Nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com # Запускаємо Certbot

Дотримуйтесь інструкцій Certbot. Він автоматично змінить ваш конфіг Nginx, додасть HTTPS-редиректи та налаштує автоматичне продовження сертифіката. Після завершення ваш Nginx-конфіг буде оновлено, і Dolibarr буде доступний за HTTPS.

4. Завершення встановлення Dolibarr через веб-інтерфейс

Тепер, коли все налаштовано, відкрийте ваш домен (https://yourdomain.com) у браузері. Ви побачите сторінку встановлення Dolibarr:

  1. Крок 1: Перевірте системні вимоги. Переконайтеся, що всі необхідні розширення PHP та права доступу до файлів/директорій відзначені як "OK".
  2. Крок 2: Налаштування бази даних.
    • Тип бази даних: PostgreSQL
    • Ім'я хоста СУБД: localhost
    • Порт СУБД: 5432
    • Ім'я БД: dolibarrdb (яку ми створили)
    • Логін користувача БД: dolibarruserdb (якого ми створили)
    • Пароль користувача БД: ваш_пароль_від_бд
  3. Крок 3: Налаштування Dolibarr.
    • Шлях до директорії даних (Dolibarr data directory): /var/lib/dolibarr/documents
    • Ім'я адміністратора: admin (або інше)
    • Пароль адміністратора: ваш_пароль_адміністратора

Після завершення встановлення Dolibarr попросить вас видалити або перейменувати файл install.lock. Це важливий крок для безпеки:


sudo rm /var/www/dolibarr/install.lock

Тепер ви можете увійти до Dolibarr під створеним адміністратором.

5. Перевірка працездатності

Відкрийте ваш домен у браузері (https://yourdomain.com). Ви повинні побачити сторінку входу до Dolibarr. Ви також можете перевірити доступність за допомогою curl з сервера:


curl -v https://yourdomain.com

У виводі ви повинні побачити успішну HTTP-відповідь (код 200) та інформацію про сертифікат Let's Encrypt.

Резервні копії та обслуговування

Схема: Резервні копії та обслуговування
Схема: Резервні копії та обслуговування

Регулярне резервне копіювання та своєчасне обслуговування є ключовими для стабільної та безпечної роботи Dolibarr. Втрата даних може бути катастрофічною для будь-якого бізнесу.

Що резервувати

Для повного відновлення Dolibarr вам знадобляться три основні компоненти:

  1. База даних PostgreSQL: Містить усі ваші бізнес-дані (клієнти, рахунки, замовлення, продукти тощо). Це найкритичніший компонент.
  2. Директорія документів Dolibarr: /var/lib/dolibarr/documents. Тут зберігаються прикріплені файли, рахунки у PDF, користувацькі звіти та інші неструктуровані дані.
  3. Конфігураційні файли Dolibarr: /var/www/dolibarr/conf/conf.php. Містить параметри підключення до бази даних та інші важливі налаштування. Також корисно резервувати конфіги Nginx (/etc/nginx/sites-available/dolibarr.conf) та PHP (/etc/php/8.4/fpm/php.ini).

Простий скрипт авторезервування

Ми створимо простий скрипт, який виконуватиме дамп бази даних та архівуватиме директорію документів. Потім ці файли будуть переміщені у безпечне місце.


sudo mkdir -p /opt/backups/dolibarr # Створюємо директорію для резервних копій
sudo nano /opt/backups/dolibarr_backup.sh

Вставте наступний вміст у файл dolibarr_backup.sh. Замініть YOUR_DB_PASSWORD на пароль користувача бази даних dolibarruserdb.


#!/bin/bash

# Переменные
DB_NAME="dolibarrdb"
DB_USER="dolibarruserdb"
DB_PASSWORD="YOUR_DB_PASSWORD" # Введіть ваш пароль від БД
BACKUP_DIR="/opt/backups/dolibarr"
DOLIBARR_DOCS_DIR="/var/lib/dolibarr/documents"
CONFIG_FILE="/var/www/dolibarr/conf/conf.php"
NGINX_CONFIG="/etc/nginx/sites-available/dolibarr.conf"
PHP_CONFIG="/etc/php/8.4/fpm/php.ini"
DATE=$(date +%Y%m%d%H%M%S)
FILENAME_PREFIX="dolibarr_backup_${DATE}"

# Створення дампу бази даних PostgreSQL
echo "Створення дампу бази даних..."
PGPASSWORD="${DB_PASSWORD}" pg_dump -U "${DB_USER}" -d "${DB_NAME}" > "${BACKUP_DIR}/${FILENAME_PREFIX}_db.sql"
if [ $? -eq 0 ]; then
    echo "Дамп бази даних успішно створено: ${BACKUP_DIR}/${FILENAME_PREFIX}_db.sql"
else
    echo "Помилка при створенні дампу бази даних!"
    exit 1
fi

# Архівування директорії документів та конфігів
echo "Архівування директорії документів та конфігів..."
tar -czf "${BACKUP_DIR}/${FILENAME_PREFIX}_files.tar.gz" -C "$(dirname ${DOLIBARR_DOCS_DIR})" "$(basename ${DOLIBARR_DOCS_DIR})" \
    -C "$(dirname ${CONFIG_FILE})" "$(basename ${CONFIG_FILE})" \
    -C "$(dirname ${NGINX_CONFIG})" "$(basename ${NGINX_CONFIG})" \
    -C "$(dirname ${PHP_CONFIG})" "$(basename ${PHP_CONFIG})"
if [ $? -eq 0 ]; then
    echo "Архів файлів успішно створено: ${BACKUP_DIR}/${FILENAME_PREFIX}_files.tar.gz"
else
    echo "Помилка при архівуванні файлів!"
    exit 1
fi

# Видалення старих резервних копій (зберігаємо останні 7 днів)
echo "Видалення старих резервних копій..."
find "${BACKUP_DIR}" -type f -name "dolibarr_backup_*.sql" -mtime +7 -delete
find "${BACKUP_DIR}" -type f -name "dolibarr_backup_*.tar.gz" -mtime +7 -delete
echo "Резервні копії старші 7 днів видалено."

echo "Резервне копіювання Dolibarr завершено."

Зробіть скрипт виконуваним:


sudo chmod +x /opt/backups/dolibarr_backup.sh

Додайте скрипт до cron для щоденного виконання (наприклад, о 3:00 ранку):


sudo crontab -e

Додайте наступний рядок у кінець файлу:


0 3 * * * /opt/backups/dolibarr_backup.sh >> /var/log/dolibarr_backup.log 2>&1

Куди зберігати резервні копії

Зберігання резервних копій на тому ж сервері, що й Dolibarr, дуже ризиковано. Якщо сервер вийде з ладу, ви втратите і систему, і резервні копії. Рекомендується використовувати одне з наступних рішень:

  • Зовнішнє S3-сумісне об'єктне сховище: Найбільш надійний та масштабований варіант. Використовуйте утиліти типу s3cmd, rclone або awscli (якщо використовуєте AWS S3) для автоматичного завантаження резервних копій.
  • Окремий VPS або виділений сервер: Просто синхронізуйте резервні копії по SSH за допомогою rsync на інший сервер.
  • Мережеве сховище NFS/SMB: Якщо у вас є локальна мережа з NAS.

Приклад додавання rsync до скрипта (після видалення старих резервних копій):


# Синхронізація резервних копій на віддалений сервер (замініть user@remote_host:/path/to/backups)
echo "Синхронізація резервних копій на віддалений сервер..."
rsync -avz --remove-source-files "${BACKUP_DIR}/" user@remote_host:/path/to/backups/
if [ $? -eq 0 ]; then
    echo "Резервні копії успішно синхронізовано на віддалений сервер."
else
    echo "Помилка при синхронізації резервних копій на віддалений сервер!"
fi

Оновлення: rolling vs maintenance window

  • Оновлення ОС та ПЗ стеку (Nginx, PHP, PostgreSQL): Для системного ПЗ рекомендується використовувати "maintenance window" (вікно обслуговування). Заплануйте час, коли система використовується мінімально, і виконайте sudo apt update && sudo apt upgrade -y. Завжди робіть резервну копію перед оновленням.
  • Оновлення Dolibarr: Оновлення самої системи Dolibarr (наприклад, з версії 20.0 до 21.0) вимагає окремого підходу. Зазвичай це включає завантаження нової версії, заміну файлів (крім директорії conf та documents), а потім запуск скрипта оновлення через веб-інтерфейс. Завжди читайте офіційну документацію щодо оновлення Dolibarr для конкретної версії та робіть повну резервну копію перед початком.
  • Автоматичне продовження Let's Encrypt: Certbot за замовчуванням налаштований на автоматичне продовження сертифікатів. Ви можете перевірити статус cron-завдання для Certbot: sudo systemctl status certbot.timer.

Вирішення проблем + FAQ

Навіть при ретельному налаштуванні можуть виникнути проблеми. Нижче представлені типові питання та способи їх вирішення.

Не можу отримати доступ до Dolibarr через браузер (HTTP 502 Bad Gateway)

Що перевірити: Помилка 502 зазвичай означає, що Nginx не може зв'язатися з PHP-FPM.

  • Перевірте, чи запущено PHP-FPM:
    sudo systemctl status php8.4-fpm
  • Перевірте логи PHP-FPM:
    sudo journalctl -u php8.4-fpm
  • Перевірте, чи правильно вказано шлях до сокету PHP-FPM у конфігу Nginx (fastcgi_pass unix:/run/php/php8.4-fpm.sock;).
  • Переконайтеся, що користувач www-data (від імені якого працює Nginx) має права на читання/запис до сокету PHP-FPM.
Як виправити: Перезапустіть PHP-FPM та Nginx. Переконайтеся, що всі шляхи в конфігах вірні.

Не можу отримати доступ до Dolibarr через браузер (HTTP 403 Forbidden)

Що перевірити: Помилка 403 означає, що Nginx може знайти файли, але йому заборонено їх віддавати.

  • Перевірте права доступу до директорії /var/www/dolibarr. Користувач www-data повинен бути власником або мати права на читання/виконання.
    sudo ls -la /var/www/dolibarr
  • Перевірте, що в конфігу Nginx немає правил deny all;, які помилково блокують доступ до потрібних файлів.
Як виправити: Встановіть правильні права:
sudo chown -R www-data:www-data /var/www/dolibarr && sudo chmod -R 750 /var/www/dolibarr

Не можу підключитися до бази даних PostgreSQL з Dolibarr

Що перевірити:

  • Переконайтеся, що PostgreSQL запущено:
    sudo systemctl status postgresql
  • Перевірте ім'я бази даних, користувача та пароль у файлі /var/www/dolibarr/conf/conf.php (після встановлення через веб-інтерфейс).
  • Спробуйте підключитися до бази даних вручну з сервера:
    sudo -i -u postgres psql -d dolibarrdb -U dolibarruserdb
    (введіть пароль).
  • Перевірте логи PostgreSQL на помилки:
    sudo journalctl -u postgresql
Як виправити: Виправте дані для підключення в conf.php. Якщо забули пароль до бази, скиньте його для користувача dolibarruserdb через psql.

Сертифікат Let's Encrypt не продовжується автоматично

Що перевірити:

  • Перевірте статус таймера Certbot:
    sudo systemctl status certbot.timer
  • Спробуйте виконати продовження вручну:
    sudo certbot renew --dry-run
    (для тесту) або
    sudo certbot renew
    (для реального продовження).
  • Перевірте логи Certbot:
    sudo less /var/log/letsencrypt/letsencrypt.log
  • Переконайтеся, що порти 80 і 443 відкриті в UFW.
Як виправити: Якщо --dry-run видає помилки, виправте їх (часто це проблеми з доступом до порту 80 або неправильні DNS-записи). Переконайтеся, що доменні імена у вашому Nginx-конфігу та в команді Certbot збігаються.

Не можу завантажити файли в Dolibarr (наприклад, вкладення до рахунків)

Що перевірити:

  • Перевірте права доступу до директорії даних Dolibarr: /var/lib/dolibarr/documents. Користувач www-data повинен мати права на запис.
    sudo ls -la /var/lib/dolibarr/documents
  • Перевірте значення upload_max_filesize та post_max_size у /etc/php/8.4/fpm/php.ini. Якщо файли занадто великі, PHP може їх відхиляти.
Як виправити: Встановіть правильні права:
sudo chown -R www-data:www-data /var/lib/dolibarr/documents && sudo chmod -R 750 /var/lib/dolibarr/documents
. Збільште ліміти в php.ini та перезапустіть PHP-FPM.

Який VPS-конфіг мінімально підійде?

Для невеликої команди (1-5 активних користувачів) та помірного використання Dolibarr мінімально підійде VPS з 2 ядрами CPU, 4 GB RAM та 80 GB NVMe SSD. Це забезпечить достатньо ресурсів для операційної системи, PostgreSQL, Nginx та PHP-FPM. Однак, при зростанні кількості користувачів або інтенсивності роботи з системою, рекомендується масштабувати ресурси, щоб уникнути уповільнень та забезпечити комфортну роботу.

Що вибрати — VPS чи dedicated для цього завдання?

Для більшості малих та середніх підприємств, фрілансерів та стартапів VPS буде оптимальним вибором. Він пропонує достатню продуктивність, гнучкість та економічність. Виділений сервер (dedicated) має сенс розглядати, якщо у вас дуже велика команда (50+ користувачів), високі вимоги до продуктивності бази даних, суворі нормативи щодо безпеки та ізоляції, або якщо ви плануєте розміщувати безліч інших ресурсоємних сервісів на одному хості. Dedicated сервери забезпечують повний контроль над залізом та ексклюзивні ресурси, але коштують значно дорожче та вимагають більшого рівня адміністрування.

Висновки та наступні кроки

Схема: Висновки та наступні кроки
Схема: Висновки та наступні кроки

Ви успішно розгорнули Dolibarr ERP/CRM на вашому VPS, використовуючи стек Nginx, PostgreSQL та PHP-FPM, а також забезпечили безпечне з'єднання за допомогою Let's Encrypt. Тепер у вас є потужна та гнучка платформа для управління всіма аспектами вашого бізнесу, повністю під вашим контролем.

Ось кілька кроків, які ви можете зробити для подальшого розвитку та оптимізації вашої системи:

  1. Налаштування моніторингу: Встановіть системи моніторингу (наприклад, Prometheus + Grafana або Zabbix) для відстеження продуктивності сервера, використання ресурсів та стану Dolibarr. Це допоможе виявляти проблеми до того, як вони стануть критичними.
  2. Вивчення модулів Dolibarr: Dolibarr має великий магазин модулів (DoliStore), які можуть розширити функціональність системи під специфічні потреби вашого бізнесу. Вивчіть доступні інтеграції та розширення.
  3. Оптимізація продуктивності: Зі зростанням навантаження ви можете розглянути оптимізацію PostgreSQL (тюнінг postgresql.conf), PHP-FPM (налаштування пулів процесів) та Nginx (кешування).
  4. Впровадження CI/CD: Для розробників або команд, які активно кастомізують Dolibarr, налаштування конвеєра безперервної інтеграції/безперервної поставки (CI/CD) допоможе автоматизувати розгортання оновлень та змін.

Чи був цей гайд корисним?

Ваш відгук допомагає нам покращувати гайди.

Share this post:

Надішліть гайд тому, кому він може стати в пригоді.

Telegram VKVK WhatsApp Facebook LinkedIn XX

Встановлення Dolibarr ERP/CRM на VPS: Nginx, PostgreSQL та Let's Encrypt
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.