Nastavení kontejneru WSL

Můžete přizpůsobit, jak wslc.exe spouští kontejnery, například kolik procesorů a kolik paměti může relace kontejneru používat, pomocí souboru nastavení YAML pro jednotlivé uživatele, který se nachází na adrese %LOCALAPPDATA%\wslc\settings.yaml.

Otevřete soubor nastavení

Ve výchozím nastavení soubor nastavení neexistuje. Pokud ho chcete vytvořit a otevřít ve výchozím editoru pro .yaml soubory (nebo Poznámkový blok, pokud není přidružený žádný editor), spusťte:

wslc settings

Při prvním spuštění tohoto příkazu wslc vytvoří soubor se všemi nastaveními zakomentovanými a nastavenými na default. Odkomentujte řádek a nahraďte default svou hodnotou, abyste změnili nastavení. Pokud chcete soubor znovu přepsat zakomentovaným výchozím nastavením, spusťte příkaz:

wslc settings reset

Tady je ukázkový settings.yaml soubor:

session:
  cpuCount: 4
  memorySize: 8GB
  maxStorageSize: 500GB
  storagePath: D:\data
  defaultBindingAddress: 127.0.0.1
  hostLoopback: host.wslc.internal
  idleTimeout: 60

Dostupná nastavení

Každé nastavení přijímá hodnotu default, která použije vestavěnou výchozí hodnotu. Nastavení, která v souboru chybí, také používají vestavěné výchozí hodnoty.

Setting Value Výchozí Description
session.cpuCount Číslo Všechny logické procesory Počet virtuálních procesorů přiřazených k relaci kontejneru Musí být větší než 0.
session.memorySize size 50% celkové paměti v systému Windows Maximální množství paměti přiřazené k relaci kontejneru, například 8GB.
session.maxStorageSize size 1TB Maximální velikost virtuálního disku (VHDX), který ukládá image a kontejnery relace, například 500GB.
session.storagePath cesta %LOCALAPPDATA% Absolutní základní adresář pro úložiště výchozí relace. Virtuální disk se vytvoří v umístění <storagePath>\wslc\sessions\<session>\storage.vhdx.
session.defaultBindingAddress Adresa IPv4 127.0.0.1 Adresa hostitele, na kterou se publikované porty navážou při použití wslc container run -p bez zadání adresy. Nastavit na 0.0.0.0, aby se navázalo na všechna hostitelská rozhraní.
session.hostLoopback řetězec host.wslc.internal Název DNS, který kontejnery můžou použít pro dosažení hostitele Windows. Nastavením na none tento název zakážete.
session.idleTimeout Číslo 30 Počet sekund, po které virtuální počítač relace zůstane spuštěný poté, co se stane nečinným, než se vypne. Musí být větší než 0.
credentialStore wincred nebo file wincred Kde jsou uloženy přihlašovací údaje z registru kontejnerů wslc login. wincred používá Správce pověření systému Windows. file používá soubor zašifrovaný rozhraním DPAPI v umístění %LOCALAPPDATA%\wslc\registry-credentials.json.

Hodnoty velikosti jsou celé číslo následované volitelnou jednotkou: B, KKB/, MMB/, G/GB, ,TB/T , nebo P/PB (nerozlišující velká a malá písmena). Jednotky jsou binární, takže 1GB je 1024 MB. Hodnota bez jednotky se interpretuje jako bajty a minimální hodnota je 1 MB.

Note

Změna session.storagePath poté, co již relace existuje, nepřesune existující image, kontejnery ani úložiště. Předchozí úložiště zůstane na místě a v novém umístění se vytvoří nová prázdná relace.

Když se změny projeví

  • Nastavení relace (session.*) se čte při spuštění relace kontejneru. Pokud už relace běží, zastavte ji pomocí wslc system session terminate, aby další wslc příkaz spustil novou relaci s aktualizovaným nastavením. Relace se také sama ukončí po session.idleTimeout sekundách nečinnosti.
  • session.defaultBindingAddress a credentialStore se načítají pokaždé, když spustíte příkaz wslc.

Pokud soubor nastavení obsahuje neznámé nastavení, neplatnou hodnotu nebo neplatný YAML, wslc vytiskne upozornění, které obsahuje cestu k souboru a číslo řádku, a použije vestavěné výchozí nastavení pro ovlivněná nastavení.

Note

Tato nastavení platí pro relaci, kterou používá wslc.exe. Nastavení v .wslconfig se nevztahují na kontejnery WSL. Aplikace, které používají rozhraní API kontejneru WSL , konfigurují vlastní relace v kódu, například pomocí SessionSettings.

Dodatečné zdroje