Plik konfiguracyjny odoo.conf to serce każdej instalacji systemu Odoo ERP. To właśnie w nim definiujemy najważniejsze parametry, które wpływają na działanie całego systemu - od połączenia z bazą danych, przez ustawienia sieciowe, po optymalizację wydajności. Prawidłowa konfiguracja tego pliku jest kluczowa dla stabilnej i bezpiecznej pracy Odoo.
Gdzie znaleźć plik odoo.conf?
Lokalizacja pliku konfiguracyjnego zależy od systemu operacyjnego i sposobu instalacji Odoo. Najczęstsze lokalizacje to:
- Linux (Ubuntu/Debian): /etc/odoo/odoo.conf lub /etc/odoo.conf
- Windows: C:\Program Files\Odoo\server\odoo.conf
- Instalacja ze źródeł: w katalogu głównym Odoo lub w lokalizacji wskazanej podczas uruchomienia
- Instalacja Docker: plik montowany jako volume lub przekazywany przez zmienne środowiskowe
- Instalacja przez pip: plik tworzony ręcznie w wybranej lokalizacji
Jeśli dopiero instalujesz Odoo, zapoznaj się z naszym przewodnikiem jak zainstalować Odoo na Ubuntu lub jak zainstalować Odoo na Windows.
Podstawowa struktura pliku odoo.conf
Plik odoo.conf wykorzystuje format INI, gdzie parametry są grupowane w sekcjach. Główna sekcja to [options], w której definiujemy wszystkie kluczowe ustawienia systemu. Podstawowa struktura wygląda następująco:
[options] parametr = wartość
Najważniejsze parametry konfiguracyjne
Ustawienia bazy danych
Konfiguracja połączenia z bazą danych PostgreSQL to absolutna podstawa. Kluczowe parametry to:
- db_host: adres serwera bazy danych (domyślnie localhost)
- db_port: port PostgreSQL (domyślnie 5432)
- db_user: nazwa użytkownika bazy danych
- db_password: hasło do bazy danych
- db_name: nazwa konkretnej bazy (opcjonalnie, można pominąć dla multi-database)
- db_filter: wyrażenie regularne filtrujące dostępne bazy danych - w środowisku produkcyjnym zapobiega dostępowi do niepożądanych baz
- db_maxconn: maksymalna liczba połączeń z bazą danych (domyślnie 64)
Przykładowa konfiguracja:
db_host = localhost db_port = 5432 db_user = odoo db_password = StrongPassword123 db_filter = ^production_db$
Parametr db_filter jest szczególnie ważny w środowiskach wielobazowych - możesz użyć wyrażeń takich jak ^%h$ (dopasowanie nazwy hosta) lub ^production_.*$ (wszystkie bazy zaczynające się od "production_").
Szczegóły dotyczące konfiguracji bazy danych znajdziesz w artykule jak skonfigurować bazę danych PostgreSQL dla Odoo.
Ustawienia sieciowe
Parametry sieciowe definiują, jak Odoo komunikuje się z zewnętrznym światem:
- http_port: port HTTP (domyślnie 8069)
- http_interface: interfejs sieciowy (domyślnie 0.0.0.0 - wszystkie interfejsy, w produkcji często 127.0.0.1 dla proxy)
- proxy_mode: tryb pracy za reverse proxy jak Nginx czy Apache (True/False) - aktywuje obsługę nagłówków X-Forwarded-*
- longpolling_port: port dla longpolling/websocket (domyślnie 8072) - używany w Odoo 19 do komunikacji w czasie rzeczywistym
- gevent_port: alternatywna nazwa dla longpolling_port w niektórych wersjach
Przykład:
http_port = 8069 http_interface = 127.0.0.1 proxy_mode = True longpolling_port = 8072
W Odoo 19 longpolling jest kluczowy dla funkcji czasu rzeczywistego takich jak chat, powiadomienia czy aktualizacje interfejsu. Upewnij się, że ten port jest również prawidłowo skonfigurowany w reverse proxy.
Jeśli chcesz zmienić domyślny port, sprawdź nasz przewodnik jak zmienić port Odoo.
Ścieżki i katalogi
Odoo wymaga zdefiniowania kilku kluczowych ścieżek:
- addons_path: ścieżki do katalogów z modułami (oddzielone przecinkami) - kolejność ma znaczenie, pierwsza ścieżka ma priorytet
- data_dir: katalog z plikami danych, sesjami użytkowników, załącznikami i filestore - musi być zapisywalny przez użytkownika Odoo
- logfile: ścieżka do pliku logów (jeśli nie ustawione, logi idą na stdout)
Przykład:
addons_path = /opt/odoo/addons,/opt/odoo/custom-addons data_dir = /var/lib/odoo logfile = /var/log/odoo/odoo.log
Katalog data_dir jest krytyczny dla działania systemu - przechowuje nie tylko załączniki, ale także sesje użytkowników. Upewnij się, że ma odpowiednie uprawnienia (zazwyczaj właściciel: odoo:odoo, uprawnienia: 750).
Parametr addons_path jest szczególnie ważny podczas instalowania modułów niestandardowych - więcej na ten temat w artykule jak zainstalować moduły zewnętrzne w Odoo.
Wydajność i optymalizacja
Plik odoo.conf pozwala na precyzyjną konfigurację parametrów wydajnościowych:
- workers: liczba procesów roboczych (0 = tryb wielowątkowy dla developmentu, >0 = wieloprocesowy dla produkcji)
- max_cron_threads: maksymalna liczba wątków dla zadań cron (domyślnie 2)
- limit_memory_soft: miękki limit pamięci na worker w bajtach - przy przekroczeniu worker kończy pracę po zakończeniu aktualnego żądania
- limit_memory_hard: twardy limit pamięci na worker w bajtach - natychmiastowe zabicie procesu przy przekroczeniu
- limit_time_cpu: maksymalny czas CPU dla pojedynczego żądania w sekundach
- limit_time_real: maksymalny rzeczywisty czas (wall time) dla pojedynczego żądania w sekundach
- limit_request: liczba żądań przed automatycznym restartowaniem workera - zapobiega wyciekom pamięci
Dla serwera produkcyjnego przykładowa konfiguracja:
workers = 4 max_cron_threads = 2 limit_memory_soft = 2147483648 limit_memory_hard = 2684354560 limit_time_cpu = 600 limit_time_real = 1200 limit_request = 8192
Liczba workers powinna być dostosowana do zasobów serwera. Dobrym punktem startowym jest: (liczba_rdzeni_CPU × 2) + 1, ale wymaga to testowania pod rzeczywistym obciążeniem. Pamiętaj, że każdy worker potrzebuje pamięci RAM - dla małych instalacji 2-4 workers może być wystarczające.
Upewnij się, że Twój serwer spełnia odpowiednie wymagania systemowe dla Odoo 19.
Bezpieczeństwo
Kluczowe parametry bezpieczeństwa w pliku odoo.conf:
- admin_passwd: hasło główne (master password) do zarządzania bazami danych - bez niego niemożliwe jest tworzenie/usuwanie baz przez interfejs
- list_db: czy pokazywać listę baz danych (True/False) - w produkcji zawsze ustawiaj na False
- db_maxconn: maksymalna liczba połączeń z bazą danych
- without_demo: czy instalować dane demonstracyjne przy tworzeniu nowej bazy (True/False) - w produkcji ustaw na True
Zalecenia bezpieczeństwa:
admin_passwd = SuperStrongMasterPassword456! list_db = False db_maxconn = 64 without_demo = True
Hasło admin_passwd powinno być długie (minimum 20 znaków), losowe i przechowywane bezpiecznie. W środowiskach wysokiego bezpieczeństwa rozważ użycie zmiennych środowiskowych zamiast przechowywania hasła w pliku tekstowym.
Przykładowy kompletny plik odoo.conf
Poniżej znajduje się przykład kompleksowego pliku konfiguracyjnego dla środowiska produkcyjnego Odoo 19:
[options] # Baza danych db_host = localhost db_port = 5432 db_user = odoo db_password = SecureDBPassword db_filter = ^production_.*$ db_maxconn = 64 # Sieć http_port = 8069 http_interface = 127.0.0.1 proxy_mode = True longpolling_port = 8072 # Ścieżki addons_path = /opt/odoo/addons,/opt/odoo/enterprise,/opt/odoo/custom data_dir = /var/lib/odoo logfile = /var/log/odoo/odoo.log # Wydajność workers = 6 max_cron_threads = 2 limit_memory_soft = 2147483648 limit_memory_hard = 2684354560 limit_time_cpu = 600 limit_time_real = 1200 limit_request = 8192 # Bezpieczeństwo admin_passwd = MasterPassword789! list_db = False without_demo = True # Logowanie log_level = info log_handler = :INFO
Jak zastosować zmiany w pliku odoo.conf?
Po edycji pliku konfiguracyjnego należy zrestartować usługę Odoo. W zależności od systemu operacyjnego:
Linux (systemd):
sudo systemctl restart odoo
Docker:
docker restart odoo # lub dla docker-compose: docker-compose restart odoo
Windows:
Restart usługi Odoo przez Menedżer usług Windows lub:
net stop odoo-server net start odoo-server
Uruchomienie ręczne:
./odoo-bin -c /ścieżka/do/odoo.conf
Po restarcie sprawdź logi, aby upewnić się, że Odoo uruchomiło się prawidłowo i wczytało nową konfigurację.
Najczęstsze problemy i rozwiązania
Podczas konfiguracji pliku odoo.conf możesz napotkać typowe problemy:
- Błąd połączenia z bazą danych: sprawdź parametry db_host, db_port, db_user i db_password. Upewnij się, że PostgreSQL działa i akceptuje połączenia.
- Odoo nie startuje: zweryfikuj składnię pliku i uprawnienia do katalogów. Sprawdź logi, aby zobaczyć dokładny komunikat błędu.
- Brak dostępu do modułów: upewnij się, że ścieżka addons_path jest poprawna, katalogi istnieją i mają odpowiednie uprawnienia odczytu.
- Problemy z wydajnością: dostosuj liczbę workers do zasobów serwera. Za dużo workers może spowolnić system przez nadmierną konsumpcję pamięci.
- Websocket/longpolling nie działa: sprawdź konfigurację longpolling_port i upewnij się, że reverse proxy przekazuje połączenia WebSocket.
- Problemy z uprawnieniami do data_dir: katalog musi być zapisywalny przez użytkownika uruchamiającego Odoo (zazwyczaj użytkownik 'odoo').
Dobre praktyki konfiguracji
Aby zapewnić optymalne działanie systemu Odoo, warto stosować się do kilku sprawdzonych zasad:
- Zawsze twórz kopię zapasową pliku odoo.conf przed jego modyfikacją
- Używaj silnych, unikalnych haseł dla admin_passwd i db_password - minimum 20 znaków z dużymi literami, małymi literami, cyframi i znakami specjalnymi
- Nie przechowuj pliku odoo.conf w repozytorium git - używaj zmiennych środowiskowych lub oddzielnych plików konfiguracyjnych, dodaj odoo.conf do .gitignore
- Regularnie przeglądaj logi, aby wykrywać potencjalne problemy zanim wpłyną na użytkowników
- Dostosuj liczbę workers do liczby rdzeni procesora i dostępnej pamięci RAM - testuj pod rzeczywistym obciążeniem
- W środowisku produkcyjnym zawsze ustaw list_db = False i without_demo = True dla bezpieczeństwa
- Monitoruj zużycie pamięci i odpowiednio dostosuj limity limit_memory_soft i limit_memory_hard
- Używaj proxy_mode = True gdy Odoo działa za Nginx lub Apache
- Regularnie aktualizuj hasło admin_passwd i przechowuj je w bezpiecznym menedżerze haseł
- Dokumentuj wszelkie niestandardowe ustawienia w komentarzach w pliku konfiguracyjnym
FAQ - Najczęściej zadawane pytania
Gdzie znajduje się domyślny plik odoo.conf po instalacji?
Lokalizacja pliku odoo.conf zależy od systemu operacyjnego i metody instalacji. W systemach Linux (Ubuntu/Debian) z instalacji przez pakiet znajduje się zazwyczaj w /etc/odoo/odoo.conf. Na Windows w C:\Program Files\Odoo\server\odoo.conf. Jeśli instalowałeś Odoo ze źródeł lub przez pip, plik może nie istnieć domyślnie - wtedy musisz go utworzyć ręcznie w wybranej lokalizacji i wskazać podczas uruchamiania parametrem -c. W instalacjach Docker plik jest zazwyczaj montowany jako volume z hosta.
Jak ustawić liczbę workers w pliku odoo.conf?
Liczba workers powinna być dostosowana do zasobów serwera i rzeczywistego obciążenia. Popularny punkt wyjścia to formuła: (liczba_rdzeni_CPU × 2) + 1. Na przykład, dla serwera z 4 rdzeniami: workers = 9. Jednak w praktyce często wystarczy mniej - dla małych instalacji 2-4 workers może być optymalne. Pamiętaj, że workers = 0 oznacza tryb wielowątkowy (odpowiedni tylko dla developmentu), podczas gdy wartość większa niż 0 aktywuje tryb wieloprocesowy (wymagany dla produkcji). Każdy worker wymaga około 200-300 MB RAM plus pamięć na obsługę żądań, więc upewnij się, że serwer ma wystarczające zasoby. Najlepiej testuj różne wartości pod rzeczywistym obciążeniem.
Czy mogę mieć wiele plików konfiguracyjnych odoo.conf?
Tak, możesz i powinieneś tworzyć różne pliki konfiguracyjne dla różnych środowisk (development.conf, staging.conf, production.conf). Przy uruchamianiu Odoo wskazujesz konkretny plik parametrem -c, na przykład: ./odoo-bin -c /path/to/production.conf. To podejście umożliwia łatwe przełączanie między konfiguracjami i zapewnia lepszą organizację ustawień dla różnych środowisk. Możesz też używać zmiennych środowiskowych do nadpisywania wybranych parametrów bez modyfikacji pliku. W środowiskach kontenerowych (Docker) często używa się osobnych plików dla każdego środowiska montowanych jako volumes.
Podsumowanie
Prawidłowa konfiguracja pliku odoo.conf jest fundamentem stabilnego i wydajnego działania systemu Odoo ERP. Zrozumienie poszczególnych parametrów pozwala na optymalne dostosowanie systemu do specyficznych wymagań biznesowych i infrastruktury technicznej. W Odoo 19 szczególną uwagę należy zwrócić na konfigurację longpolling_port dla funkcji czasu rzeczywistego oraz odpowiednie ustawienia workers i limitów pamięci dla stabilności systemu. Pamiętaj o regularnym przeglądaniu i aktualizowaniu konfiguracji wraz z rozwojem Twojej organizacji i zmieniającymi się potrzebami.
Jeśli podczas konfiguracji natrafisz na problemy lub potrzebujesz pomocy w optymalizacji Odoo, nie wahaj się skontaktować z KK Innovations. Nasz zespół ekspertów ma bogate doświadczenie we wdrażaniu i konfiguracji systemów Odoo dla firm różnej wielkości. Pomożemy Ci stworzyć optymalną konfigurację dopasowaną do Twoich potrzeb biznesowych i technicznych.