Události
Mistrovství Světa v Power BI DataViz
14. 2. 16 - 31. 3. 16
Se 4 šance na vstup, můžete vyhrát konferenční balíček a udělat to na LIVE Grand Finale v Las Vegas
Další informaceTento prohlížeč se už nepodporuje.
Upgradujte na Microsoft Edge, abyste mohli využívat nejnovější funkce, aktualizace zabezpečení a technickou podporu.
Autor: Rick Anderson
ASP.NET Core ve výchozím nastavení používá protokol HTTPS. HTTPS spoléhá na certifikáty pro důvěryhodnost, identitu a šifrování.
Tento dokument vysvětluje, jak spouštět předdefinované image kontejnerů pomocí protokolu HTTPS pomocí rozhraní příkazového řádku .NET (CLI). Pokyny ke spuštění Dockeru ve vývoji pomocí sady Visual Studio najdete v tématu Vývoj aplikací ASP.NET Core pomocí Dockeru přes PROTOKOL HTTPS.
Tato ukázka vyžaduje Docker 17.06 nebo novější klienta Dockeru.
Aktuální sada .NET SDK.
Pro produkční hostování domény se vyžaduje certifikát od certifikační autority. Let's Encrypt je certifikační autorita, která nabízí bezplatné certifikáty.
Tento dokument používá vývojové certifikáty podepsané svým držitelem k hostování předdefinovaných imagí.localhost
Pokyny jsou podobné použití produkčních certifikátů. Certifikát vygenerovaný dotnet dev-certs
pouze pro použití localhost
a neměl by se používat v prostředí, jako je Kubernetes. Pokud chcete podporovat PROTOKOL HTTPS v rámci clusteru Kubernetes, použijte nástroje poskytované správou certifikátů TLS v clusteru k nastavení protokolu TLS v podech.
Slouží dotnet dev-certs
k vytvoření certifikátů podepsaných svým držitelem pro vývoj a testování.
Pro produkční certifikáty:
dotnet dev-certs
není povinný.Pokyny obsažené v následující části připojují certifikáty ke kontejnerům pomocí možnosti příkazového řádku Dockeru -v
. Certifikáty můžete přidat do imagí kontejnerů pomocí COPY
příkazu v souboru Dockerfile, ale nedoporučuje se. Kopírování certifikátů do image se nedoporučuje z následujících důvodů:
Pro konfiguraci operačního systému použijte následující pokyny.
Vygenerujte certifikát a nakonfigurujte místní počítač:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
V předchozích příkazech nahraďte <CREDENTIAL_PLACEHOLDER>
heslem.
Spusťte image kontejneru s ASP.NET Core nakonfigurovanou pro HTTPS v příkazovém prostředí:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
V předchozím kódu nahraďte <CREDENTIAL_PLACEHOLDER>
heslem. Heslo musí odpovídat heslu použitému pro certifikát.
Pokud používáte PowerShell, nahraďte %USERPROFILE%
ho .$env:USERPROFILE
Poznámka: Certifikát v tomto případě musí být .pfx
soubor.
.crt
Použití nebo .key
souboru s heslem není u ukázkového kontejneru podporované nebo bez. Například při zadávání .crt
souboru může kontejner vracet chybové zprávy, jako je například Ssl v režimu serveru, musí používat certifikát s přidruženým privátním klíčem. Při použití WSL ověřte cestu připojení, abyste měli jistotu, že se certifikát načte správně.
Vygenerujte certifikát a nakonfigurujte místní počítač:
dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
V Linuxu dotnet dev-certs https --trust
vyžaduje sadu .NET 9 SDK nebo novější. Informace o Linuxu v sadě .NET 8.0.401 SDK a starších verzích najdete v dokumentaci k distribuci Linuxu pro důvěryhodnost certifikátu.
V předchozích příkazech nahraďte <CREDENTIAL_PLACEHOLDER>
heslem.
Spusťte image kontejneru s nakonfigurovaným ASP.NET Core pro HTTPS:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v ${HOME}/.aspnet/https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
V předchozím kódu nahraďte <CREDENTIAL_PLACEHOLDER>
heslem. Heslo musí odpovídat heslu použitému pro certifikát.
Vygenerujte certifikát a nakonfigurujte místní počítač:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
V předchozích příkazech nahraďte <CREDENTIAL_PLACEHOLDER>
heslem. Pokud používáte PowerShell, nahraďte %USERPROFILE%
ho .$env:USERPROFILE
Spusťte image kontejneru s nakonfigurovaným ASP.NET Core pro HTTPS:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=c:\https\aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:C:\https\ --user ContainerAdministrator mcr.microsoft.com/dotnet/samples:aspnetapp
POZNÁMKA:<CREDENTIAL_PLACEHOLDER>
je zástupný symbol pro Kestrel výchozí heslo certifikátů.
Heslo musí odpovídat heslu použitému pro certifikát. Pokud používáte PowerShell, nahraďte %USERPROFILE%
ho .$env:USERPROFILE
Informace a ukázky vývoje aplikací ASP.NET Core pomocí Dockeru přes HTTPS najdete v tématu Vývoj aplikací ASP.NET Core pomocí protokolu HTTPS v kontejnerech Dockeru.
ASP.NET Core ve výchozím nastavení používá protokol HTTPS.
Tento dokument vysvětluje, jak spouštět předdefinované image kontejnerů pomocí protokolu HTTPS pomocí rozhraní příkazového řádku .NET (CLI). Pokyny ke spuštění Dockeru ve vývoji pomocí sady Visual Studio najdete v tématu Vývoj aplikací ASP.NET Core pomocí Dockeru přes PROTOKOL HTTPS.
Tato ukázka vyžaduje Docker 17.06 nebo novější klienta Dockeru.
Aktuální sada .NET SDK.
Pro produkční hostování domény se vyžaduje certifikát od certifikační autority. Let's Encrypt je certifikační autorita, která nabízí bezplatné certifikáty.
Tento dokument používá vývojové certifikáty podepsané svým držitelem k hostování předdefinovaných imagí.localhost
Pokyny jsou podobné použití produkčních certifikátů. Certifikát vygenerovaný dotnet dev-certs
pouze pro použití localhost
a neměl by se používat v prostředí, jako je Kubernetes. Pokud chcete podporovat PROTOKOL HTTPS v rámci clusteru Kubernetes, použijte nástroje poskytované správou certifikátů TLS v clusteru k nastavení protokolu TLS v podech.
Slouží dotnet dev-certs
k vytvoření certifikátů podepsaných svým držitelem pro vývoj a testování.
Pro produkční certifikáty:
dotnet dev-certs
není povinný.Pokyny obsažené v následující části připojují certifikáty ke kontejnerům pomocí možnosti příkazového řádku Dockeru -v
. Certifikáty můžete přidat do imagí kontejnerů pomocí COPY
příkazu v souboru Dockerfile, ale nedoporučuje se. Kopírování certifikátů do image se nedoporučuje z následujících důvodů:
Pro konfiguraci operačního systému použijte následující pokyny.
Vygenerujte certifikát a nakonfigurujte místní počítač:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
V předchozích příkazech nahraďte <CREDENTIAL_PLACEHOLDER>
heslem.
Spusťte image kontejneru s ASP.NET Core nakonfigurovanou pro HTTPS v příkazovém prostředí:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
V předchozím kódu nahraďte <CREDENTIAL_PLACEHOLDER>
heslem. Heslo musí odpovídat heslu použitému pro certifikát.
Pokud používáte PowerShell, nahraďte %USERPROFILE%
ho .$env:USERPROFILE
Poznámka: Certifikát v tomto případě musí být .pfx
soubor.
.crt
Použití nebo .key
souboru s heslem není u ukázkového kontejneru podporované nebo bez. Například při zadávání .crt
souboru může kontejner vracet chybové zprávy, jako je například Ssl v režimu serveru, musí používat certifikát s přidruženým privátním klíčem. Při použití WSL ověřte cestu připojení, abyste měli jistotu, že se certifikát načte správně.
Vygenerujte certifikát a nakonfigurujte místní počítač:
dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
dotnet dev-certs https --trust
je podporován pouze v systémech macOS a Windows. Certifikáty v Linuxu musíte důvěřovat způsobem, který vaše distribuce podporuje. Je pravděpodobné, že budete muset důvěřovat certifikátu v prohlížeči.
V předchozích příkazech nahraďte <CREDENTIAL_PLACEHOLDER>
heslem.
Spusťte image kontejneru s nakonfigurovaným ASP.NET Core pro HTTPS:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx -v ${HOME}/.aspnet/https:/https/ mcr.microsoft.com/dotnet/samples:aspnetapp
V předchozím kódu nahraďte <CREDENTIAL_PLACEHOLDER>
heslem. Heslo musí odpovídat heslu použitému pro certifikát.
Vygenerujte certifikát a nakonfigurujte místní počítač:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p <CREDENTIAL_PLACEHOLDER>
dotnet dev-certs https --trust
V předchozích příkazech nahraďte <CREDENTIAL_PLACEHOLDER>
heslem. Pokud používáte PowerShell, nahraďte %USERPROFILE%
ho .$env:USERPROFILE
Spusťte image kontejneru s nakonfigurovaným ASP.NET Core pro HTTPS:
docker pull mcr.microsoft.com/dotnet/samples:aspnetapp
docker run --rm -it -p 8000:80 -p 8001:443 -e ASPNETCORE_URLS="https://+;http://+" -e ASPNETCORE_HTTPS_PORTS=8001 -e ASPNETCORE_Kestrel__Certificates__Default__Password="<CREDENTIAL_PLACEHOLDER>" -e ASPNETCORE_Kestrel__Certificates__Default__Path=c:\https\aspnetapp.pfx -v %USERPROFILE%\.aspnet\https:C:\https\ --user ContainerAdministrator mcr.microsoft.com/dotnet/samples:aspnetapp
POZNÁMKA:<CREDENTIAL_PLACEHOLDER>
je zástupný symbol pro Kestrel výchozí heslo certifikátů.
Heslo musí odpovídat heslu použitému pro certifikát. Pokud používáte PowerShell, nahraďte %USERPROFILE%
ho .$env:USERPROFILE
Informace a ukázky vývoje aplikací ASP.NET Core pomocí Dockeru přes HTTPS najdete v tématu Vývoj aplikací ASP.NET Core pomocí protokolu HTTPS v kontejnerech Dockeru.
Zpětná vazba k produktu ASP.NET Core
ASP.NET Core je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby:
Události
Mistrovství Světa v Power BI DataViz
14. 2. 16 - 31. 3. 16
Se 4 šance na vstup, můžete vyhrát konferenční balíček a udělat to na LIVE Grand Finale v Las Vegas
Další informace