Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
A partire da .NET 11, quando si pubblica un contenitore SDK in un runtime del contenitore locale, l'SDK preferisce automaticamente le interfacce CLI native della piattaforma quando sono disponibili: wslc in Windows e nell'interfaccia della riga di comando di container Apple in macOS. Questa modifica influisce sul runtime locale che riceve l'immagine quando è installato anche Docker o Podman.
Versione introdotta
.NET 11 Preview 7
Comportamento precedente
In precedenza, quando LocalRegistry non è stato impostato in modo esplicito, l'SDK ha eseguito il probe di Docker e Podman e caricato l'immagine pubblicata nel runtime Docker o Podman selezionato.
Nuovo comportamento
A partire da .NET 11, in Windows, l'SDK esegue prima il wslcprobe . In macOS l'SDK esegue prima il probe dell'interfaccia della riga di comando di container Apple. Se lo strumento nativo della piattaforma è disponibile e il relativo servizio viene eseguito, l'SDK carica l'immagine pubblicata. Docker e Podman rimangono opzioni di fallback.
È possibile selezionare in modo esplicito Docker, Podman, wslco l'interfaccia della riga di comando di container Apple tramite la LocalRegistry proprietà MSBuild.
Tipo di cambiamento che interrompe la compatibilità
Questa modifica è una modifica funzionale.
Motivo della modifica
Windows e macOS ora forniscono strumenti per contenitori nativi della piattaforma. L'SDK offre l'esperienza della piattaforma nativa mantenendo il comportamento di fallback di Docker e Podman.
Per altre informazioni, vedere i problemi di implementazione e rilevamento correlati dotnet/sdk-container-build#651 e dotnet/sdk-container-build#636.
Azione consigliata
Se la selezione automatica funziona per il flusso di lavoro, non è necessaria alcuna azione.
Per continuare a usare un runtime specifico, impostare la LocalRegistry proprietà MSBuild in modo esplicito:
dotnet publish /t:PublishContainer -p:LocalRegistry=Docker
Usare Docker o Podman per selezionare Docker o Podman. Usare Wslc in Windows o MacOSContainer in macOS per selezionare in modo esplicito il runtime nativo della piattaforma.
Le API interessate
Microsoft.NET.Build.Containers.KnownLocalRegistryTypes.WslcMicrosoft.NET.Build.Containers.KnownLocalRegistryTypes.MacOSContainer