Jak konfigurować i wdrażać niestandardowe szablony aplikacji w aplikacji Container Station 3?
Szablony aplikacji Container Station umożliwiają wdrażanie wstępnie skonfigurowanych kontenerów w środowisku QNAP. Domyślnie aplikacja Container Station udostępnia kolekcję szablonów zweryfikowanych przez QNAP, ale możesz dodać kolejne niestandardowe szablony aplikacji, aby zaspokoić swoje konkretne potrzeby. Te niestandardowe szablony aplikacji możesz hostować bezpośrednio na urządzeniu QNAP lub na zewnętrznym serwerze WWW.
W tym samouczku wyjaśniono dwie metody hostowania niestandardowych szablonów aplikacji na urządzeniu QNAP oraz sposób konfigurowania aplikacji Container Station w celu uzyskiwania dostępu do tych niestandardowych szablonów aplikacji.
- Tworzenie pliku niestandardowego szablonu aplikacji
- Hostowanie niestandardowego szablonu aplikacji w kontenerze NGINX
- Hostowanie niestandardowego szablonu aplikacji przy użyciu serwera WWW QNAP
- Dodawanie niestandardowego szablonu aplikacji do aplikacji Container Station
- Wdrażanie niestandardowego szablonu aplikacji
Tworzenie pliku niestandardowego szablonu aplikacji
Pierwszym krokiem jest utworzenie pliku niestandardowego szablonu aplikacji. Domyślnie aplikacja Container Station udostępnia listę kontenerów, które są zweryfikowane pod kątem prawidłowego działania z Twoim urządzeniem QNAP. Szablony zweryfikowane przez QNAP można pobrać i zmodyfikować tutaj lub samodzielnie utworzyć nowy plik.
Plik szablonu możesz zmodyfikować w dowolnym edytorze tekstu.
Format szablonu aplikacji
Definicje szablonów aplikacji są zapisane w pliku JSON. Prawidłowe szablony składają się z tablicy i co najmniej jednego elementu szablonu kontenera. Każdy element szablonu kontenera jest obiektem JSON, który obejmuje dowolne obowiązkowe lub opcjonalne pola danych. Format powinien być podobny do poniższego przykładu:
{
“templates”: [
{
// template1
},
{
// template2
},
...
]
}
Format elementu JSON
type
|
Atrybut |
Opis |
|---|---|
|
Opis |
Typ kontenera (Docker lub LXD) do tego szablonu. |
|
Ważność |
Wymagane |
|
Format |
Liczba całkowita |
|
Akceptowane wartości |
|
title
|
Atrybut |
Opis |
|---|---|
|
Opis |
Tytuł szablonu. |
|
Ważność |
Wymagane |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny ciąg |
sub_title
|
Atrybut |
Opis |
|---|---|
|
Opis |
Informacje o wersji szablonu. |
|
Ważność |
Wymagane |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny ciąg |
description
|
Atrybut |
Opis |
|---|---|
|
Opis |
Opis przeznaczenia szablonu. |
|
Ważność |
Wymagane |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny ciąg |
logo
|
Atrybut |
Opis |
|---|---|
|
Opis |
Lokalizacja logo szablonu. |
|
Ważność |
Opcjonalne |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny prawidłowy adres URL lub ścieżka zawierająca relację do domeny sieciowej, w której jest hostowany niestandardowy szablon aplikacji. |
location
|
Atrybut |
Opis |
|---|---|
|
Opis |
Adres URL szablonu. Może prowadzić do strony zawierającej wprowadzenie do szablonu. |
|
Ważność |
Opcjonalne |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny prawidłowy adres URL |
platform
|
Atrybut |
Opis |
|---|---|
|
Opis |
Obsługiwana platforma. Musi zawierać prawidłową wartość. |
|
Ważność |
Wymagane |
|
Format |
Ciąg |
|
Akceptowane wartości |
|
|
Przykład |
|
image
|
Atrybut |
Opis |
|---|---|
|
Opis |
Obraz powiązany z szablonem. |
|
Ważność |
Wymagane |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny prawidłowy obraz |
|
Przykład |
|
command
|
Atrybut |
Opis |
|---|---|
|
Opis |
Polecenie uruchamiane w kontenerze Docker. Jeśli nie zostanie podane, zostanie użyte domyślne polecenie określone w pliku Dockerfile. |
|
Ważność |
Opcjonalne |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny ciąg |
|
Przykład |
|
entrypoint
|
Atrybut |
Opis |
|---|---|
|
Opis |
Punkt wejścia umożliwiający uruchomienie kontenera Docker. Jeśli nie zostanie podany, zostanie użyty domyślny punkt wejścia określony w pliku Dockerfile. |
|
Ważność |
Opcjonalne |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny ciąg |
|
Przykład |
|
env
|
Atrybut |
Opis |
|---|---|
|
Opis |
Tablica JSON z opisem zmiennych środowiskowych wymaganych przez szablon. Poszczególne elementy tablicy muszą być prawidłowymi obiektami JSON. |
|
Ważność |
Opcjonalne |
|
Format |
Tablica |
|
Akceptowane wartości |
Prawidłowa tablica JSON |
|
Format tablicy |
|
|
Przykład |
|
labels
|
Atrybut |
Opis |
|---|---|
|
Opis |
Tablica JSON z opisem etykiet skojarzonych z szablonem. Poszczególne elementy tablicy muszą być prawidłowymi obiektami JSON. |
|
Ważność |
Opcjonalne |
|
Format |
Tablica |
|
Akceptowane wartości |
Prawidłowa tablica JSON |
|
Format tablicy |
|
|
Przykład |
|
volumes
|
Atrybut |
Opis |
|---|---|
|
Opis |
Tablica JSON z opisem woluminów skojarzonych z szablonem. Poszczególne elementy tablicy muszą być prawidłowymi obiektami JSON z wymaganą właściwością kontenera. |
|
Ważność |
Opcjonalne |
|
Format |
Tablica |
|
Akceptowane wartości |
Prawidłowa tablica JSON |
|
Format tablicy |
|
|
Przykład |
|
ports
|
Atrybut |
Opis |
|---|---|
|
Opis |
Tablica JSON z opisem portów udostępnianych przez szablon. Poszczególne elementy tablicy muszą być prawidłowymi ciągami JSON określającymi numer portu w kontenerze oraz protokół. Opcjonalnie można dodać prefiks zawierający numer portu i dwukropek (na przykład 8080:) w celu zdefiniowania mapowanego portu na hoście. Jeśli port hosta nie zostanie podany, host Docker automatycznie przypisze port podczas uruchamiania kontenera. |
|
Ważność |
Opcjonalne |
|
Format |
Tablica |
|
Akceptowane wartości |
Prawidłowa tablica JSON |
|
Przykład |
|
hostname
|
Atrybut |
Opis |
|---|---|
|
Opis |
Nazwa hosta kontenera. Ułatwia identyfikację kontenera. |
|
Ważność |
Opcjonalne |
|
Format |
Ciąg |
|
Akceptowane wartości |
Dowolny ciąg |
|
Przykład |
|
restart_policy
|
Atrybut |
Opis |
|---|---|
|
Opis |
Zasady ponownego uruchamiania skojarzone z kontenerem Docker. Jeśli nie zostaną podane, wartość domyślna tounless-stopped. |
|
Ważność |
Opcjonalne |
|
Format |
Ciąg |
|
Akceptowane wartości |
|
|
Przykład |
|
auto_start_policy
|
Atrybut |
Opis |
|---|---|
|
Opis |
Zasady automatycznego uruchamiania skojarzone z kontenerem LXD. Jeśli nie zostaną podane, wartość domyślna toretain. |
|
Ważność |
Opcjonalne |
|
Format |
Ciąg |
|
Akceptowane wartości |
|
|
Przykład |
|
interactive
|
Atrybut |
Opis |
|---|---|
|
Opis |
Określa, czy kontener Docker ma być uruchamiany w trybie pierwszego planu. W przypadku niepodania wartość domyślna totrue. |
|
Ważność |
Opcjonalne |
|
Format |
Wartość logiczna |
|
Akceptowane wartości |
|
|
Przykład |
|
tty
|
Atrybut |
Opis |
|---|---|
|
Opis |
Określa, czy kontenerowi Docker przypisać proces pseudo-TTY. W przypadku niepodania wartość domyślna totrue. |
|
Ważność |
Opcjonalne |
|
Format |
Wartość logiczna |
|
Akceptowane wartości |
|
|
Przykład |
|
privileged
|
Atrybut |
Opis |
|---|---|
|
Opis |
Określa, czy kontener ma być uruchamiany w trybie uprzywilejowanym. W przypadku niepodania wartość domyślna tofalse. |
|
Ważność |
Opcjonalne |
|
Format |
Wartość logiczna |
|
Akceptowane wartości |
|
|
Przykład |
|
Hostowanie niestandardowego szablonu aplikacji w kontenerze NGINX
Następnie należy udostępnić niestandardowy szablon aplikacji dla aplikacji Container Station. W tym temacie wyjaśniono proces hostowania pliku szablonu w kontenerze NGINX, który jest także uruchomiony w aplikacji Container Station.
Ewentualnie można też hostować plik szablonu aplikacji na serwerze WWW QNAP. Zobacz Hostowanie niestandardowego szablonu aplikacji przy użyciu serwera WWW QNAP.
Po zaktualizowaniu pliku JSON niestandardowych szablonów aplikacji musisz ponownie uruchomić kontener NGINX, aby odzwierciedlić zmiany w kontenerze.
Plik szablonu aplikacji stanie się dostępny do użycia.
Możesz sprawdzić, czy plik szablonu aplikacji jest dostępny, wprowadzając adres http://HOST_IP_ADDRESS:PUBLISHED_HOST_PORT/TEMPLATE_FILENAME w przeglądarce internetowej. Przykład: http://192.168.1.1:30080/my-templates.json.
Hostowanie niestandardowego szablonu aplikacji przy użyciu serwera WWW QNAP
Następnie należy udostępnić niestandardowy szablon aplikacji dla aplikacji Container Station. W tym temacie wyjaśniono proces hostowania pliku szablonu na serwerze WWW QNAP.
Ewentualnie możesz też hostować plik szablonu aplikacji przy użyciu kontenera NGINX bezpośrednio w aplikacji Container Station. Zobacz Hostowanie niestandardowego szablonu aplikacji w kontenerze NGINX.
- Włącz serwer WWW QTS.
- Przekaż plik niestandardowego szablonu aplikacji.
Plik szablonu aplikacji stanie się dostępny do użycia.
Możesz sprawdzić, czy plik szablonu aplikacji jest dostępny, wprowadzając adres http://HOST_IP_ADDRESS:WEB_SERVER_PORT/TEMPLATE_FILENAME w przeglądarce internetowej. Przykład: http://192.168.1.1:80/my-templates.json.
Dodawanie niestandardowego szablonu aplikacji do aplikacji Container Station
Następnym krokiem jest dodanie pliku niestandardowego szablonu aplikacji do aplikacji Container Station. Dzięki temu lista aplikacji stanie się dostępna w aplikacji Container Station.
Aplikacja Container Station zapisze niestandardowy szablon aplikacji.
Wdrażanie niestandardowego szablonu aplikacji
Ostatnim krokiem jest wdrożenie kontenera z pliku niestandardowego szablonu aplikacji dodanego w poprzednim kroku.
Zostanie otwarty kreator Wdróż kontener. Zobacz Tworzenie kontenera Docker.



.



