Przejdź do głównej zawartości

Uruchamianie Własnego Obrazu

Główną różnicą w porównaniu do predefiniowanych aplikacji jest użycie słowa kluczowego custom podczas tworzenia zasobu niestandardowego. Polecenie wygląda następująco:

cgc compute create custom -n my-app -g 1 -gt A100 -c 8 -m 24 -v my-vol -fp /workspace/my-app --image repository/my-image:tag

Wszystkie flagi pozostają takie same z wyjątkiem:

  • -i, --image - repository/my-image:tag. Zauważ, że jeśli pobierasz z publicznego repozytorium, dockerhub nie wymaga nazwy repozytorium.

Bądź ostrożny ze ścieżką pełnego montażu -fp. Domyślnie CGC zamontuje do /workspace/my-vol, zgodnie z wymaganiami Jupyter Lab.

Jeśli chcesz sprawdzić wszystkie używane ścieżki montażu w swoich aplikacjach, możesz użyć następującego polecenia:

cgc compute list-mounts

Dodatkowe flagi do rozważenia podczas tworzenia niestandardowej aplikacji:

  • --repository-secret - nazwa sekretu używanego do pobierania obrazu z prywatnego repozytorium
  • --node-port-enabled - włącz usługę korzystając z NodePort dla zasobu obliczeniowego w instancjach CGC OnPremise (dostępne od wersji klienta 1.0.14)
  • -d, --resource-data - dodatkowe dane do uwzględnienia w środowiskach (lista dozwolonych kluczy CGC 1.0.13+: ['llama_model_path', 'rag_cache_path', 'postgre_host', 'postgre_password', 'postgre_name', 'app_token', 'label_studio_username', 'weaviate_transformers_inference_api', 'weaviate_enable_modules', 'custom_image', 'image_pull_secret_name', 'custom_command', 'node_port_enabled'])
    • większość tych dozwolonych kluczy jest specyficzna dla entity i jest używana do konfiguracji środowiska entity
    • dla custom / jobów, możesz użyć następujących kluczy:
      • custom_image - nazwa niestandardowego obrazu
      • image_pull_secret_name - nazwa sekretu używanego do pobierania obrazu z prywatnego repozytorium
      • custom_command - polecenie do wykonania w kontenerze
      • node_port_enabled - włącz usługę NodePort dla zasobu obliczeniowego w instancji CGC OnPremises

Polecenie startowe

STDIN jest akceptowane jako polecenie startowe. Możesz użyć następującego polecenia, aby przekazać swoje polecenie do kontenera:

"echo;" | cgc compute create custom -n test --image ubuntu

Lub możesz użyć pliku:

cat ./command.bash | cgc compute create custom -n test --image ubuntu

W powyższym przykładzie command.bash to plik zawierający twoje polecenie.

Przykładowa zawartość pliku command.bash:

echo "Hello World";
echo "Hello World";

Użycie Prywatnego Repozytorium

CGC umożliwia tworzenie i zarządzanie własnymi sekretami, które pozwalają na pobieranie obrazów kontenerów z prywatnych repozytoriów. Aby skonfigurować dostęp, należy najpierw utworzyć sekret, a następnie odwołać się do niego podczas uruchamiania instancji custom.

  1. Tworzenie sekretu rejestru Utwórz sekret w swoim namespace za pomocą CLI CGC. Sekret ten przechowuje dane uwierzytelniające do rejestru i może być wykorzystany wielokrotnie.
cgc secret create -r <registry_url> -u <username> -p <password> <nazwa_sekretu>

Sekret będzie zapisany w Twoim namespace i może być używany ponownie.

  1. Uruchamianie instancji z użyciem secretu Po utworzeniu sekretu użyj go do uruchomienia instancji custom z obrazem z prywatnego repozytorium:
cgc compute create custom -n <nazwa> -c <CPU> -m <RAM> --image <registry_url>/<namespace>/<nazwa_obrazu>:<TAG> --repository-secret <nazwa_sekretu>

Usuwanie Twojej Niestandardowej Aplikacji

Aplikacje oparte na niestandardowych obrazach są traktowane tak samo jak wbudowane aplikacje CGC. Aby usunąć aplikację, użyj następującego polecenia:

cgc compute delete my-app
# lub
cgc rm my-app

Rozliczanie

Niestandardowe aplikacje są rozliczane tak samo jak wszystkie inne aplikacje.

Uwaga

Skontaktuj się z nami, jeśli twój obraz jest większy niż 20GB, abyśmy mogli zwiększyć twój domyślny limit.