Aktualizacja OTOBO w Dockerze – bezpieczne uaktualnienie wersji
Regularne aktualizacje instalacji OTOBO gwarantują dostęp do nowych funkcji, poprawek bezpieczeństwa oraz usunięć błędów. Ten przewodnik pokazuje, jak w kilku krokach zaktualizować instancję OTOBO opartą na Dockerze do wybranej wersji.
Wymagania wstępne
- Istniejąca instalacja OTOBO z wykorzystaniem Docker i Docker Compose
- Dostęp SSH do hosta
- Kopia zapasowa ważnych danych (woluminy Docker dla
/opt/otobo
, baza danych, indeks Elasticsearch) - Docelowa wersja, np. 11.0.10 lub 10.1.8
Krok 1: Aktualizacja konfiguracji Docker Compose
Przejdź do katalogu projektu OTOBO w Dockerze:
bashcd /opt/otobo-docker
Pobierz nowe tagi z Git i przełącz się na żądaną wersję:
bashgit fetch --tags git checkout rel-11_0_10 # przykład dla wersji 11.0.10
W razie potrzeby dostosuj plik
.env
, np.:iniOTOBO_IMAGE=rotheross/otobo:11.0.10 OTOBO_IMAGE_ELASTICSEARCH=elasticsearch:8.8.2 OTOBO_IMAGE_NGINX=nginx:1.23-alpine
Krok 2: Pobranie nowych obrazów Docker
docker-compose pull
Krok 3: Zatrzymanie i aktualizacja kontenerów
Zatrzymaj stare kontenery (woluminy pozostają nietknięte):
bashdocker-compose down
Przeprowadź migrację woluminu z kodem do nowej wersji:
bashdocker-compose run --rm web copy_otobo_next
Uruchom kontenery z nowym oprogramowaniem:
bashdocker-compose up -d
Krok 4: Wykonanie wewnętrznego uaktualnienia OTOBO
Uruchom zadania aktualizacyjne:
bashdocker-compose exec web entrypoint.sh do_update_tasks
Opcjonalnie: skrypt migracji bazy danych dla wersji głównej (np. 10.1 → 11.0):
bashdocker exec -it otobo_web_1 perl scripts/DBUpdate-to-11.0.pl
Sprawdź dziennik aktualizacji:
bashdocker-compose exec web cat /opt/otobo/var/log/update.log
Krok 5: Zakończenie i weryfikacja
- Sprawdź status:
docker-compose ps
powinno pokazywać, że wszystkie kontenery działają - Przetestuj logowanie: Upewnij się, że agenci i klienci mogą się zalogować
- Krótki test funkcjonalny: Utwórz zgłoszenie, wyślij e-mail i sprawdź kluczowe funkcje
Dostępne wersje OTOBO
Wersje główne i pomocnicze (wybór):
- 11.0.10: Oferuje wewnętrzne usprawnienia i zaktualizowane tagi Docker dla stabilnych wdrożeń.
- 11.0.9: Zamyka krytyczne zagrożenie bezpieczeństwa (CVE-2025-43926) oraz optymalizuje moduł wyszukiwania zgłoszeń.
- 11.0.8: Wzmocnione algorytmy hashowania haseł i ulepszona uwierzytelnianie dwuskładnikowe.
- 11.0.7: Różne poprawki błędów, m.in. poprawki wyświetlania pól wyboru i linków do artykułów.
- 11.0.6: Ważne aktualizacje bezpieczeństwa przeciw iniekcji JavaScript oraz przejście na CKEditor 5.
- 11.0.5: Optymalizacje układu dla CKEditor 5 i lepsze tłumaczenie usług.
- 11.0.4: Rozszerzony system tłumaczeń i zoptymalizowane skrypty szybkiego uruchamiania Docker.
- 11.0.3: Naprawia błędy bazy danych podczas łączenia zgłoszeń i problemy z polami dynamicznymi.
- 11.0.2: Automatyczne ładowanie repozytoriów ITSM i lepsze wykrywanie aktualizacji pakietów głównych.
- 11.0.1: Nowe funkcje pól dynamicznych oraz motyw High Contrast poprawiający dostępność.
- 11.0.0-beta3: Przejście na
HTML::Scrubber
dla bezpieczniejszego działania funkcjiSafety()
. - 11.0.0-beta2: Udoskonalone pola referencyjne dynamiczne i integracja nowych pakietów głównych.
- 10.1.8: Poprawka bezpieczeństwa dla XSS w
AdminCustomerUser
oraz bardziej niezawodna walidacja nagłówków HTTP. - 10.1.7: Ulepszona prezentacja kalendarza i stabilniejsze zarządzanie Elasticsearch.
- 10.1.6: Zamyka lukę SQL Injection w
TicketSearch
oraz optymalizuje powiadomienia o wydarzeniach. - 10.1.5: Zapobiega iniekcji kodu w ACL i aktualizuje kluczowe biblioteki JavaScript.
- 10.1.4: Naprawia luki w synchronizacji LDAP i poprawia masowe aktualizacje.
- 10.1.3: Zapobiega wywołaniom po stronie serwera w interfejsie administracyjnym i zamyka luki XSS.
- 10.1.2: Naprawy błędów w module
DynamicFieldDatabase
dla spójnego wyszukiwania. - 10.1.1: Rozszerzony panel klienta i ulepszona samoleczność Elasticsearch.
Uwaga: Przy przejściu do nowej wersji głównej (np. 10.1 → 11.0) najpierw wykonaj aktualizację pomocniczą (10.1), a następnie główną (11.0).