# Aktualizacja w kontenerze Docker

#### Instrukcje aktualizacji Xopero ONE Management Service w kontenerze Docker wyjaśniają jak wykonać aktualizacje i efektywnie zarządzać usługą.

***

## Aktualizacja Management Service

{% hint style="info" %}
Poniższe instrukcje mają zastosowanie dla modelu wdrożenia on-premise **Xopero ONE Management Service**.
{% endhint %}

{% tabs %}
{% tab title="Windows (Kontener Docker)" %}

## Proces aktualizacji

{% hint style="danger" %}
Aktualizacja **Xopero ONE Management** uruchomionego jako kontener **Docker** polega na **zatrzymaniu starego kontenera**, **zainstalowaniu nowego** (stare bazy danych muszą być podmontowane) i **usunięciu starego kontenera**.
{% endhint %}

1. Pobierz nowy obraz i usuń stary kontener z [**XMS**](#user-content-fn-1)[^1], używając polecenia:

```
docker pull xopero/xopero-one-service:latest
docker stop xone && docker rm xone
```

2. Następnie utwórz nowy kontener z agentem za pomocą tej komendy:

```

docker run -d \
  --name <container_name> \
  -p <xms_port>:80 \
  -v <database_location_outside_container>:/app/Xopero \
  xopero/xopero-one-service
```

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/cZggNkkWAPQXkBlxIFOt/image.png" alt="Running the container with the Xopero ONE Management Service within"><figcaption></figcaption></figure>

***

## Walidacja aktualizacji  <a href="#update_validation" id="update_validation"></a>

Na koniec nadszedł czas, aby sprawdzić, czy wszystko przebiegło prawidłowo. Zaloguj się do panelu **Xopero ONE** za pośrednictwem przeglądarki internetowej i poczekaj, aż status urządzenia zmieni się na **online**. Upewnij się, że wszystkie poprzednie ustawienia są dostępne (plany, magazyny, urządzenia itp.).
{% endtab %}

{% tab title="QNAP NAS (Container Station > 3.0)" %}

## Proces aktualizacji

{% hint style="danger" %}
Ta metoda wymaga, aby Container Station miało co najmniej wersję 3.0.
{% endhint %}

1. Otwórz **Container Station** na urządzeniu QNAP.
2. Po uzyskaniu dostępu do **Container Station**, zlokalizuj i wybierz kontener uruchamiający **Xopero ONE Management Service**, który chcesz zaktualizować.
3. Po wybraniu odpowiedniego kontenera, kliknij ikonę ⚙️**ustawień**, aby uzyskać dostęp do ustawień kontenera.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/ATDI3cPVHl3nAE7E3imz/image.png" alt=""><figcaption></figcaption></figure>

4. W menu ustawień zobaczysz opcję oznaczoną **Recreate**. Kliknij tę opcję, aby kontynuować aktualizację. Ta czynność umożliwi Ci zastąpienie bieżącego kontenera nowym, opartym na najnowszym obrazie.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/0MsgrLnHPiGfraX1ixAb/image.png" alt="" width="146"><figcaption></figcaption></figure>

5. Następnie musisz skonfigurować ustawienia aktualizacji. Przełącz się na tryb zaawansowany, jak pokazano na ilustracji. W trybie zaawansowanym zostaniesz poproszony o wprowadzenie adresu obrazu z **Docker Hub**. Wprowadź następujący adres:

```
xopero/xopero-one-service:latest
```

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/GBNTZ1c1BJ9HmnONBBOJ/image.png" alt=""><figcaption></figcaption></figure>

6. Dodatkowo, upewnij się, że zaznaczyłeś opcję **"Try pulling the image from the registry before creating the container"**. Ten krok jest kluczowy, ponieważ zapewnia użycie najnowszej wersji obrazu. Po skonfigurowaniu tych ustawień kliknij **"Next"**, aby przejść dalej.
7. W tym momencie masz opcję edytowania ustawień kontenera tak, jak podczas tworzenia nowego kontenera. Wprowadź wszelkie niezbędne poprawki lub po prostu kliknij **"Next”** ponownie, aby przejść do strony podsumowania.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/xkrtUWTrJgPO3kc6fKKK/image.png" alt=""><figcaption></figcaption></figure>

8. Na koniec przejrzyj podsumowanie ustawień i zmian. Gdy będziesz zadowolony, kliknij **"Finish"**.
9. **Container Station** pobierze wówczas najnowszy obraz i utworzy nowy kontener, wykorzystując ustawienia i dane z poprzedniego kontenera. Ten proces zapewnia, że kontener **Xopero ONE Management Service** zostanie zaktualizowany do najnowszej wersji, zachowując wszystkie istniejące ustawienia i dane.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/P279vD96vvyMtbEJqEIL/image.png" alt=""><figcaption></figcaption></figure>

10. Postępując zgodnie z tymi krokami, możesz łatwo utrzymać kontener **XoperoONE Management Service** w aktualnym stanie, zapewniając optymalną wydajność oraz dostęp do najnowszych funkcji i ulepszeń.
    {% endtab %}

{% tab title="QNAP NAS (Container Station < 3.0.)" %}

## Proces aktualizacji <a href="#new_container" id="new_container"></a>

1. Otwórz aplikację **Container Station**, kliknij **Container name**, a następnie wybierz przycisk **Settings**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/o3ZrXFDU8Y0bCGYZCTCk/image.png" alt="Container Settings in Container Station on QNAP NAS"><figcaption></figcaption></figure>

2. Następnie wybierz opcję **Advanced Settings** i otwórz sekcję **Shared Folders** aby zobaczyć dokładną ścieżkę do baz danych na **QNAP**.\
   Zapisz ścieżkę\* (np. `/share/CACHEDEV2_DATA/Container/cointainer-station-data/lib/docker/volumes/<container's_folder>/_data`) aby wprowadzić ją podczas tworzenia kontenera z nową wersją.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/y2wRuolwv0dopUk29CsN/image.png" alt="Container Settings in Container Station on QNAP NAS"><figcaption></figcaption></figure>

3. Teraz otwórz kartę **Image**, wyszukaj `xopero/xopero-one-service` i kliknij przycisk **Install**.&#x20;

{% hint style="warning" %}
Pamiętaj, aby przełączyć się na kartę **Docker Hub** (z karty **Local**).
{% endhint %}

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/2eBrCugVzqOlnx35Tt5v/image.png" alt="Image tab in Container Station on QNAP NAS"><figcaption></figcaption></figure>

4. Teraz wybierz najnowszą wersję i kliknij przycisk **Next**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/AJiYraUvvboRqT0phHhy/image.png" alt="selecting latest version"><figcaption></figcaption></figure>

5. **QNAP** wyświetli teraz okno **Create Container**, w którym możesz ustawić nazwę kontenera, limit CPU i RAM, a także zaawansowane ustawienia dla kontenera docker **Xopero ONE**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/SCTvjXA58FrqxRY7VYXS/image.png" alt="Create container window"><figcaption></figcaption></figure>

6. Otwierając **Advanced settings***,* zyskasz dostęp do 4 dodatkowych sekcji, z których najważniejsze to **Network** i **Shared Folders**.
7. W zakładce **Network** możesz ustawić port nasłuchiwania dla usługi **Xopero ONE Management Service** (domyślny to **28555**), wpisując odpowiedni numer w polu **Host** (musi on być taki sam, jak w pierwszej instalacji).

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/QRXnkaYgVIiQ4BQEMSH8/image.png" alt="Creating contener - network tab"><figcaption></figcaption></figure>

8. Otwierając zakładkę **Shared Folders** możesz teraz wybrać ścieżkę do baz danych usługi **Xopero ONE Management Service**. Najpierw usuń istniejący wpis w sekcji **New volume**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/HuqoFMvHgkErNqT0vLec/image.png" alt="Creating contener - shared folders tab"><figcaption></figcaption></figure>

9. Następnie dodaj ścieżkę w polu **Volume from host**, użyj ścieżki zapisanej wcześniej.

{% hint style="warning" %}
Nie wklejaj ścieżki ręcznie! Wybierz lokalizację bezpośrednio z listy.<br>

Przykładowa ścieżka:\
`/share/CACHEDEV2_DATA/Container/cointainer-station-data/lib/docker/volumes/<container's_folder>/_data`
{% endhint %}

{% hint style="danger" %}
Jeżeli ścieżka: `/share/CACHEDEV2_DATA/` nie widnieje na liście, przejdź do folderu wyżej i zacznij od `/Container/`.
{% endhint %}

10. Następnie w polu **Mount Point** należy ustawić wartość: `/app/Xopero`.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/aNOIN0qDOFjGL02aDyoE/image.png" alt="Creating contener - shared folders tab"><figcaption></figcaption></figure>

11. Naciśnij przycisk **Create**, sprawdź dane w oknie **Summary** i kliknij **OK** aby kontynuować.&#x20;

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/rylsAsZZgMR39sALgFQY/image.png" alt=""><figcaption></figcaption></figure>

***

## Walidacja aktualizacji  <a href="#update_validation" id="update_validation"></a>

Na koniec należy zweryfikować, czy wszystko przebiegło pomyślnie. Zaloguj się do panelu **Xopero ONE** przez przeglądarkę internetową i poczekaj, aż status urządzeń zmieni się na **online**. Upewnij się, że wszystkie poprzednie ustawienia (**plany**, **magazyny**, **urządzenia** itp.) są dostępne. Jeśli potwierdzisz, że wszystko działa poprawnie, możesz usunąć stary kontener lub zachować go przez pewien czas dla bezpieczeństwa.
{% endtab %}

{% tab title="Synology NAS (Container Manager)" %}

## Proces aktualizacji

{% hint style="info" %}
Aby zaktualizować usługę **Management Service** zainstalowaną w środowisku **Docker** na systemie **Synology NAS**, należy zainstalować nową wersję z podmontowanymi starymi bazami danych.
{% endhint %}

1. W przypadku korzystania z tagu `:latest`, narzędzie **Container Manager** monitoruje dostępność aktualizacji obrazu. Gdy nowa wersja będzie dostępna, w zakładce **Image**, pojawi się powiadomienie ze statusem **Update available**. Aby rozpocząć proces aktualizacji, wystarczy kliknąć przycisk **Update available**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/tLsvJBOGcu1LJZ03nSzf/u1.png" alt=""><figcaption></figcaption></figure>

2. Po aktywacji pojawi się komunikat systemowy informujący, że usługi oraz kontener zostaną tymczasowo zawieszone na czas aktualizacji. Potwierdź operację, wybierając przycisk **Update**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/Bk0bwuNPy84Yf03xbCuD/u5.PNG" alt=""><figcaption></figcaption></figure>

3. W drugim kroku potwierdzenia system poprosi o ponowne zatwierdzenie aktualizacji poprzez kliknięcie przycisku **Update**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/gkt5mnZnOEPEAGDzZJR0/u3.PNG" alt=""><figcaption></figcaption></figure>

4. Postęp aktualizacji będzie widoczny na liście operacji. Po pobraniu zaktualizowanego obrazu, kontenery z włączoną opcją **Auto-start** zostaną automatycznie uruchomione ponownie.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/phKAvu9sMngScL3Eppuw/u6.PNG" alt=""><figcaption></figcaption></figure>

5. Aby zweryfikować aktualizację, przejdź do zakładki **Containers** i upewnij się, że kontener działa poprawnie. Następnie, w panelu **Xopero ONE Management Service**, potwierdź, że system wskazuje najnowszą wersję oprogramowania.
   {% endtab %}
   {% endtabs %}

[^1]: Xopero One Management Service


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://helpcenter.xopero.com/xopero-one-en/pl/aktualizacje/xopero-one-management-service/aktualizacja-w-kontenerze-docker.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
