Utrzymanie
Narzędzie do konfiguracji
Omówiony w poprzednim rozdziale instalator po pierwszym użyciu instaluje się na serwerze i pozostaje dostępny jako narzędzie konfiguracyjne.
Aby skonfigurować, zmienić lub odinstalować Nightscout:
- Musimy połączyć się z serwerem używając WebSSH (jak w poprzednim rozdziale) lub - dla zaawansowanych - z linii komend po
ssh
- W linii komend, otwieramy narzędzie poleceniem:
nightscout-tool
Obejrzyj poniższy film aby zobaczyć możliwości narzędzia konfiguracyjnego. Poniżej omówimy dostępne opcje.
Todo
Aktualizacja screencastów jest czasochłonna i nadal trwa - ten film pokazuje starszą wersję narzędzia, uważaj na drobne różnice
Menu główne
Zobacz na filmie (pozycja: 42s)
Dostępne opcje:
- Menu statusu
- Informacja o porcie i API SECRET (pozycja: 1m 20s)
- Menu aktualizacji
- Menu sprzątania
- Uruchom ponownie kontenery - ponownie uruchamia kontenery, bez aktualizacji (pozycja: 2m 22s)
- Wyślij diagnostykę i logi - umożliwia wysłanie informacji diagnostycznych serwera (pozycja: 2m 22s)
- Menu zmień lub odinstaluj - pozwala zmienić wersję Nightscouta, edytować ustawienia lub odinstalować komponenty systemu
- Informacja o wersji narzędzia, kanale dystrybucji, haśle do diagnostyki, autorze i licencji (pozycja: 2m 56s)
Menu statusu
Zobacz na filmie (pozycja: 48s)
To menu pokazuje status kontenerów systemu. Klikając na nazwę kontenera jesteśmy w stanie zobaczyć logi (komunikaty diagnostyczne) kontenera. Jest to przydatne do diagnozowania problemów, np.: kiedy Nightscout nie chce się uruchomić i wyświetla błąd.
W menu statusu możemy też sprawdzić: - status watchdoga - usługi pilnującej ciągłości i poprawności działania Nightscout-a. - zdarzenia - wybrane zdarzenia w systemie, które mogą być przydatne do diagnozowania problemów.
Menu aktualizacji
Menu aktualizacji umożliwia aktualizację narzędzia (skryptu nightscout-tool
) jak i komponentów systemu:
- Aktualizacja tego narzędzia - aktualizuje
nightscout-tool
(pozycja: 1m 40s) - Aktualizacja pakietów systemu operacyjnego (pozycja: 6m 8s)
- Aktualizacja kontenerów - usuwa i ponownie pobiera oraz uruchamia kontenery - czasami powodując ich aktualizację (pozycja: 1m 54s)
Problem jajka i kury...
To menu zostało dodane w wersji 1.9.0
, w poprzednich wersjach opcje aktualizacji znajdują się w menu głównym narzędzia.
Menu sprzątania
Sprzątanie polega na usunięciu zazwyczaj nieistotnych plików z systemu - aby zwolnić dostępne na serwerze miejsce.
Usuwane są pliki tymczasowe, nieużywane wersje pakietów i kontenerów, kopie zapasowe i logi. Sprzątanie zostało zaprojektowane tak, aby jego wykonanie nie popsuło działania systemu i serwera.
Ze sprzątanej listy jedynie logi mogą być przydatne przy diagnozowaniu problemów - dlatego narzędzie upewnia się czy ich skasowanie jest intencją użytkownika. Jeśli Twój serwer ma problemy - nie usuwaj logów, będą potrzebne do wysyłki diagnostyki i analizy problemów.
Dostępne są następujące opcje:
- Posprzątaj wszystko - dla wygody, uruchamia wszystkie opcje sprzątania
- Posprzątaj zasoby systemowe - sprząta cache systemowego instalatora i dziennik wiadomości
- Usuń nieużywane obrazy Dockera - usuwa nieużywane obrazy Dockera, powstają one przy zmianie wersji Nightscout czy aktualizacji kontenerów. Obrazy są niezależne od użytkownika i pobierane z zewnątrz - więc można bezpiecznie je usunąć. Jedyna konsekwencja to wolniejsze przełączanie na starsze wersje Nightscout.
- Usuń kopie zapasowe bazy danych - na wypadek katastrofalnej awarii tworzone są regularne kopie zapasowe bazy danych Nightscout, które można wykorzystać do przywrócenia systemu. Obecnie nie ma automatycznego mechanizmu przywracania bazy, a backup jest na tym samym serwerze - więc kopie są mało przydatne dla przeciętnego użytkownika.
- Usuń logi kontenerów - należy je usuwać tylko kiedy serwer działa poprawnie. Logi zapisują wszystkie operacje i komunikaty systemowe bazy danych i serwera, bywają czasem przydatne do zdiagnozowania przyczyn awarii lub niestabilności.
Wysyłka diagnostyki
Czasami serwer zachowuje się niepoprawnie, a żaden z dostępnych sposobów jego naprawy nie działa. Wtedy zostaje nam umówienie się z zaufaną osobą i przesłanie jej diagnostyki.
Menu zmień lub odinstaluj
To menu pozwala przekonfigurować Nightscout, przeinstalować lub w całości odinstalować jego komponenty.
Zobacz na filmie (pozycja: 3m 08s)
Dostępne opcje:
- Ustaw adres strony (subdomenę) - umożliwia sprawdzenie podpięcia adresu (i jego ustalenie, jeśli pominięto ten krok przy instalacji) (pozycja: 3m 14s)
- Zmień wersję Nightscout (pozycja: 3m 24s)
- Edytuj ustawienia - edytuje zmienne środowiskowe Nightscout, pozwala ustawić zachowanie serwera (pozycja: 4m 40s)
- Usuń kontenery - wyłącza Nightscout i usuwa wyłącznie kontenery, które da się odzyskać (są tylko do odczytu). Dane w bazie i konfiguracja pozostają na serwerze.
- Wyczyść bazę danych - usunie wszystkie wpisy bazy czyli m.in. dane glikemii, bolusów, pompy oraz profile, natomiast konfiguracja serwera pozostaje bez zmian.
- Usuń kontenery, dane i konfigurację - usuwa wszystkie dane i ustawienia, pozostawia jednak narzędzie do instalacji.
- Usuń wszystko - odinstaluje wszystkie dane, konfiguracje, narzędzie do konfiguracji i jego pliki. Nie usuwa doinstalowanych zależności systemowych.
Aktualizacja Nightscout
Nightscout jest projektem intensywnie rozwijanym przez społeczność programistów-ochotników z całego świata. Dzięki ich pracy, co jakiś czas możemy cieszyć się aktualizacjami i poprawkami - wychodzi nowa wersja Nightscout. Ponieważ to my zarządzamy swoją instancją serwera Nightscout, także do nas należy obowiązek aktualizacji Nightscouta.
Po co to ruszać jak działa...
Zarówno Nightscout, jak i wiele innych aplikacji cukrzycowych DIY jest ciągle intensywnie rozwijana. Nowsze wersje poprawiają znane błędy, zwiększają niezawodność i bezpieczeństwo aplikacji oraz dodają nowe funkcjonalności. Mottem ruchu Nightscout jest #WeAreNotWaiting
- my nie czekamy. Dlatego wolimy dziś używać może i niedoskonałe, ale możliwe oprogramowanie. Lepsze to niż czekać dekadę aż przemysł farmaceutyczny dostarczy może i dopracowaną, ale prostszą i ubogą wersję tego co możemy już zbudować dzisiaj sami.
Dlatego kluczowe jest abyśmy także utrzymywali nasze wersje aktualne. Kluczowe dla naszego bezpieczeństwa, spokoju ducha twórców oraz dla społeczności - używając testujemy i dowodzimy że system działa, a znajdująć i zgłaszając problemy pomagamy je naprawić i współtworzymy kolejne lepsze wersje.
Jak dużych zmian mogę się spodziewać?
Nightscout używa metodologi semver do komunikowania numeru wersji i zawartości zmian. Numer wersji składa się z trzech liczb oddzielonych kropką:
główna . mniejsza . patch
Na przykład wersja 14.2.5 oznacza: główna = 14, mniejsza = 2, patch = 5
- wersja główna - wprowadza duże zmiany które moga być niekompatybilne z innymi aplikacjami - należy przeczytać informacje o wydaniu o możliwych niekompatybilnościach i potrzebnych zmianach/aktualizacjach innych systemów lub przy aktualizacji/migracji
- wersja mniejsza - dodaje ważne poprawki i nowe funkcjonalności, ale powinna być kompatybilna w ramach wersji dużej - zazwyczaj nie sprawia problemów przy aktualizacji
- wersja patch - poprawia błędy, wydajność - zalecana do instalacji, nie sprawi problemu, nie dodaje nowych funkcjonalności ale poprawia stabilność systemu
Aby być na bieżąco, i wiedzieć że dostępna jest nowa wersja, śledź media społecznościowe.
- Oficjalną angielskojęzyczną stronę Fundacji Nightscout na Facebooku
- Polskojęzyczną grupę Technologie Diabetyka
Sprawdź swoją wersję - wejdź na własną stronę Nightscout, otwórz panel boczny naciskając na menu hamburger w prawym górnym rogu strony. U dołu, w sekcji O aplikacji
znajdziesz version
lub wersja
i jej wartość np.: 14.2.5
Wejdź na poniższe strony aby sprawdzić, czy faktycznie nowa wersja jest opublikowana:
- Sekcja Releases w oficjalnym repozytorium projektu
- Oficjalny, najnowszy obraz kontenera Nightscout w Docker Hub
„Czasami na obrazy trzeba poczekać” [Leonardo da Vinci]
Może zdarzyć się, że potrwa trochę - od opublikowania najnowszej wersji Nightscout na stronie Github projektu - do momentu publikacji odpowiadającego jej obrazu na stronie Docker Hub.
Ponieważ korzystamy z kontenera, musimy sprawdzić czy jest dostępny - a jeśli nie, poczekać 😉
Wersja na sztywno lub automatyczna
Narzędzie jest domyślnie konfigurowane aby używać najnowszej stabilnej wersji - latest
.
Konfigurując wersję Nightscout możemy wybrać wersję:
- na sztywno np.:
15.0.2
- dynamicznie np.:
latest
(najnowsza stabilna wersja) lublatest_dev
(najnowsza rozwojowa/eksperymentalna wersja)
Dynamiczne wersje sprawiają, że każdorazowe przebudowanie kontenerów (przy ich aktualizacji lub zmianie ustawień) sprawi, że użyte zostaną najnowsze wersje aplikacji.
Edycja ustawień
Nightscout konfigurowany jest za pomocą tzw. zmiennych środowiskowych (Environment Variables). Dokumentacja Nightscouta dokładnie omawia jakie to zmienne i jak je ustawiać.
Aby zmienić swoją konfigurację, w menu głównym narzędzia wybierz opcję Zmień lub odinstaluj
a w kolejnym menu wybierz Zmień ustawienia
Zobacz na filmie (pozycja: 4m 38s)
Narzędzie otworzy do edycji plik ustawień w edytorze nano
. Korzystając z edytora można zmienić istniejące/domyślne wartości lub dodać nowe, zgodnie z dokumentacją.
Aby zapisać zmiany, użyj skrótu Ctrl+O, a aby zamknąć edytor Ctrl+X. Po zamknięciu edytora narzędzie przekonfiguruje kontenery i zrestartuje Nightscouta
Ups... coś poszło nie tak
Ważne jest, aby zachować poprawny format pliku konfiguracji - inaczej narzędzie konfiguracyjne może przestać się uruchamiać wyświetlając błąd formatu pliku. W takim wypadku musimy ręcznie naprawić popsuty plik, otwierając go w panelu administracyjnym, w WebSSH komendą:
# nano /srv/nightscout/config/nightscout.env
Po czym uruchamiamy nightscout-tool
i aktualizujemy kontenery