# Instalacja w kontenerze Docker

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

## Wdrożenie <a href="#installation_process" id="installation_process"></a>

1. Pobierz [obraz Docker](https://xopero.com/download/xopero_one/latest/management-image.tar) **Xopero ONE Management Service** (**XMS**) na swoje urządzenie. Następnie otwórz konsolę **cmd** i wybierz obraz **XMS Docker** za pomocą następującego polecenia:

```docker
docker load -i docker_name.tar
```

{% hint style="danger" %}
Zastąp `docker_name.tar` azwą swojego pliku obrazu **XMS Docker**.
{% endhint %}

2. Po zaimportowaniu obrazu użyj następującego polecenia, aby utworzyć kontener:

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

{% hint style="warning" %}
W powyższym poleceniu zastąp **`drive_location_database`** ścieżką, w której ma zostać zamontowana baza danych (z kontenera do katalogu lokalnego) — <mark style="color:red;">**jest to istotne dla późniejszej aktualizacji kontenera**</mark>. W miejsce **`container_name`**, wpisz nazwę swojego kontenera, a w miejsce **`service_port`**, wpisz port usługi, który będzie używany przez **Xopero ONE** (domyślnie port **XMS** jest ustawiony na **28555**).
{% endhint %}

{% code title="Przykład:" overflow="wrap" %}

```docker
docker run -d \
  --name xone \
  -p 28555:80 \
  -v C:\database_docker\xone:/app/Xopero \
  xopero/xopero-one-service
```

{% endcode %}

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

4. Następnie użyj poniższego polecenia, aby wyświetlić listę kontenerów (lub przejrzyj listę w aplikacji **Docker Desktop**):

```docker
docker ps -a
```

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/qHHsZOxDOnlTr83PSRlT/image.png" alt="viewing the container list"><figcaption></figcaption></figure>

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

5. Jeśli nie widzisz żadnych błędów, oznacza to, że wdrożenie **XMS** zostało wykonane poprawnie. Możesz otworzyć panel **Xopero ONE Management Service**, używając następującego adresu:

```http
http://DockerHostAddress:28555
```

6. Przed rozpoczęciem korzystania z **XMS** musisz utworzyć **konto administratora** i **przypisać licencję** do swojej jednostki.

<figure><img src="https://1873867500-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fwg6DDqlTFok8F9zv6rqa%2Fuploads%2FmITVhji7duAQ6IS523vb%2Fimage.png?alt=media&#x26;token=fc2d58df-25ee-421f-9944-84b6509eaa8e" alt="" width="563"><figcaption></figcaption></figure>
{% endtab %}

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

<p align="center"><a href="#pre-qnap" class="button primary" data-icon="circle-1">Wymagania wstępne</a>    <a href="#env-qnap" class="button primary" data-icon="circle-2">Konfiguracja środowiska</a>    <a href="#dep-qnap" class="button primary" data-icon="circle-3">Wdrożenie</a></p>

## Wymagania wstępne <a href="#pre-qnap" id="pre-qnap"></a>

**QNAP**:

* [x] Procesor x86 lub x64 (architektura ARM <mark style="color:red;">**nie jest obsługiwana**</mark>).
* [x] Minimum 2GB pamięci RAM.
* [x] Aplikacja **Container Station** z **App Center.**

***

## Konfiguracja środowiska <a href="#env-qnap" id="env-qnap"></a>

1. Zaloguj się do **panelu webowego** **QNAP** i otwórz aplikację **App Center**. Przejdź do **QNAP Store** > **All Apps** i wyszukaj **Container Station** (**CS**).

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

2. Pobierz aplikację **Container Station**. Po pobraniu otwórz ją i wybierz ścieżkę, która będzie używana jako **katalog danych kontenera Docker**.
3. Kliknij **Start Now**, aby kontynuować.

***

## Wdrożenie <a href="#dep-qnap" id="dep-qnap"></a>

1. W aplikacji **Container Station** otwórz menu **Containers** i kliknij przycisk **Create**.

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

2. W sekcji **Image Configuration** wybierz **Advanced mode**. Jako typ obrazu wybierz **Docker image**, a w polu **Image** wklej:

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

3. Upewnij się, że opcja **Try pulling the image from the registry before creating the container** jest zaznaczona, a następnie kliknij **Next**.

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

4. W karcie **Configure Container**, skonfiguruj kontener **Docker Xopero ONE** i kliknij **Next**, aby kontynuować:

> **Name:** ustaw własną nazwę kontenera.
>
> **Auto start:** określa, czy kontener powinien uruchamiać się automatycznie (np. po restarcie **QNAP**).
>
> **Publish network ports:** wprowadź numer portu w polu **Host** — będzie to port używany do łączenia się z usługą **Xopero ONE** w kontenerze na porcie 80 (zalecany port hosta to 28555).

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

5. Sprawdź ponownie ustawienia konfiguracji i kliknij **Finish**.

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

6. **Container Station** pobierze najnowszy obraz **Xopero ONE** i utworzy na jego podstawie kontener.

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

7. Po zakończeniu procesu nowy kontener będzie dostępny w aplikacji **Container Station** (w sekcji **Containers**).

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

8. Połącz się z **Xopero ONE**, używając **adresu URL** w następującym formacie (znajdziesz go w **Container Details** > **General** > **Web URL**):

> `http://QNAPaddress:port`

9. Aby dokończyć konfigurację **XMS**, utwórz nowe **konto administracyjne**, podaj **kod licencyjny** i wybierz **dane do ochrony**.
   {% endtab %}

{% tab title="QNAP NAS (CS < 3.0)" %}

<p align="center"><a href="#pre-qnap2" class="button primary" data-icon="circle-1">Wymagania wstępne</a>    <a href="#env-qnap2" class="button primary" data-icon="circle-2">Konfiguracja środowiska</a>    <a href="#dep-qnap2" class="button primary" data-icon="circle-3">Wdrożenie</a></p>

## Wymagania wstępne <a href="#pre-qnap2" id="pre-qnap2"></a>

**QNAP**:

* [x] Procesor x86 lub x64 (architektura ARM <mark style="color:red;">**nie jest obsługiwana**</mark>).
* [x] Minimum 2GB pamięci RAM.
* [x] Aplikacja **Container Station** z **App Center.**

***

## Konfiguracja środowiska <a href="#env-qnap2" id="env-qnap2"></a>

1. Zaloguj się do **panelu webowego** **QNAP** i otwórz aplikację **App Center**. Przejdź do **QNAP Store** > **All Apps** i wyszukaj **Container Station** (**CS**).

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

2. Pobierz aplikację **Container Station**. Po pobraniu otwórz ją i wybierz ścieżkę, która będzie używana jako **katalog danych kontenera Docker**.
3. Kliknij **Start Now**, aby kontynuować.

***

## Wdrożenie <a href="#dep-qnap2" id="dep-qnap2"></a>

1. Otwóz aplikację **Container Station** i kliknij ➕ **Create** w menu po lewej stronie.
2. Skopiuj i wklej <kbd>xopero/xopero-one-service</kbd> w polu wyszukiwania i naciśnij **Enter** aby wyszukać **obraz Docker XMS** (powinien to być pierwszy wynik w karcie **Docker Hub**)
3. Kliknij przycisk **Install** obok **obrazu Docker**, aby rozpocząć proces tworzenia kontenera.

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

4. Wybierz **najnowszą** [wersję obrazu](#user-content-fn-1)[^1] i kliknij **Next**.

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/XmvZCULAH1qlHs3iPlB5/image.png" alt="Selecting Xopero ONE version"><figcaption></figcaption></figure>

5. W oknie **Create Container**, skonfiguruj parametry **kontenera Docker** **Xopero ONE**.

> **Name:** ustaw własną nazwę kontenera.
>
> **Auto start:** określa, czy kontener powinien uruchamiać się automatycznie (np. po restarcie **QNAP**).
>
> **CPU Limit:** pozwala przypisać procentowe użycie procesora dostępne dla tego kontenera.
>
> **Memory Limit:** ustaw pamięć RAM przydzieloną do tego kontenera.

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

6. Przewiń w dół i kliknij ⚙️ **Advanced Settings>>**&#x20;
7. W ⚙️ **Advanced Settings>>** przejdź do **Network** i kliknij przycisk **Add** po prawej stronie. Wprowadź numer portu w polu host **Host** pod sekcją **Port Forwarding**— to będzie port używany do połączenia z usługą **Xopero ONE** (zalecany, domyślny numer portu to **28555**).

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

8. Kliknij **Create** — wyświetli się podsumowanie procesu konfiguracji. Zweryfikuj ponownie konfigurację i kliknij **OK** aby utworzyć kontener.

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

9. Po zakończeniu procesu nowy kontener będzie dostępny w aplikacji **Container Station** (w sekcji **Containers**).

<figure><img src="https://content.gitbook.com/content/wg6DDqlTFok8F9zv6rqa/blobs/UkRfAqmWKTRSKONfKxcn/image.png" alt="View on running container with Xopero ONE"><figcaption></figcaption></figure>

10. Połącz się z **Xopero ONE Management Service** przez uruchomienie jej w **Container Station**, lub używając adresu URL w następującym formacie:

> <kbd>[http://QNAPaddress:port](https://helpcenter.xopero.com/xopero-one-en/pl/wdrozenie-i-konfiguracja/xopero-one-management-service/http:/QNAPaddress:port)</kbd>

11. Aby dokończyć konfigurację **XMS**, utwórz nowe **konto administracyjne**, podaj **kod licencyjny** i wybierz **dane do ochrony**.
    {% endtab %}

{% tab title="Synology NAS" %}

<p align="center"><a href="#pre-syno" class="button primary" data-icon="circle-1">Wymagania wstępne</a>    <a href="#dep-syno" class="button primary" data-icon="circle-2">Wdrożenie</a></p>

## Wymagania wstępne <a href="#pre-syno" id="pre-syno"></a>

**Synology** musi spełniać następujące wymagania:

* [x] Procesor x86 lub x64 (architektura ARM <mark style="color:red;">**nie jest obsługiwana**</mark>).
* [x] Minimum 2GB pamięci RAM.
* [x] Aplikacja **Docker** z **Package Center.**

***

## Wdrożenie  <a href="#dep-syno" id="dep-syno"></a>

1. Otwórz aplikację **Docker Hub**, przejdź do sekcji **Container**, i kliknij przycisk **Create**.&#x20;
2. Rozwiń sekcję **Image** i kliknij **Add image**. Następnie wyszukaj `xopero/xopero-one-service`. Wybierz obraz, kliknij **Download** i wybierz wersję oznaczoną jako [<mark style="color:red;">**latest**</mark>](#user-content-fn-2)[^2]. Potwierdź wybór aby przejść dalej.

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

3. Po pobraniu obrazu wybierz go z menu rozwijanego **Image** w **General Settings**. Nadaj kontenerowi nazwę w polu **Container name**. W razie potrzeby skonfiguruj limity zasobów.
4. Zaznacz pole **Enable auto-restart** aby upewnić się, że kontener automatycznie się uruchomi ponownie przy restarcie urządzenia i przejdź do następnego kroku.

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

5. W **Volume Settings**, klinij przycisk➕ **Add Folder**. Aby zapewnić trwałość danych podczas aktualizacji i operacji konserwacyjnych, zamontuj bazy danych zarządzania w katalogu zewnętrznym. Bazy są przechowywane w `/app/Xopero` i powinny być zmapowane do wyznaczonej lokalizacji poza kontenerem, aby zapobiegać utracie i niezgodności danych.

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

6. W sekcji **Environment**, zdefiniuj wymagane zmienne:

> **ASPNETCORE\_URLS:** porty usługi zarządzania dla protokołów http i https (np. **http\://+:**<mark style="color:red;">**PORT\_NUMBER**</mark>**;https\://+:**<mark style="color:red;">**PORT\_NUMBER**</mark>)

{% hint style="warning" %}
Konsola zarządzania jest dostępna na porcie **28555** dla **protokołu szyfrowanego** (**https**) oraz na porcie **28556** dla **protokołu nieszyfrowanego** (**http**).
{% endhint %}

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

7. Przejdź do **Advanced Settings**. W karcie **Network**, wybierz **bridge** z menu rozwijanego **Network name**, aby umożliwić kontenerowi używanie tego samego nazewnictwa co host konetenera, następnie zaznacz pole wyboru **Use the same network as Docker Host** na dole.

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

8. Potwierdź konfigurację i kliknij **Next**. W **Summary**, sprawdź ponownie ustawienia i kliknij **Done** aby zakończyć proces tworzenia kontenera.

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

9. Po utworzeniu kontenera możesz połączyć się z XMS pod jednym z adresów:

> https\://<mark style="color:red;">**yourSynologyAddress**</mark>:28555 (i.e., https\://<mark style="color:red;">**192.168.0.100**</mark>:28555)
>
> http\://<mark style="color:red;">**yourSynologyAddress**</mark>:28556 (i.e., http\://<mark style="color:red;">**192.168.0.100**</mark>:28556)
> {% endtab %}
> {% endtabs %}

[^1]: image version

[^2]: najnowsza


---

# 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/wdrozenie-i-konfiguracja/xopero-one-management-service/instalacja-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.
