Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
ASP.NET Core alapértelmezés szerint HTTPS-t használ. A HTTPStanúsítványokra támaszkodik a megbízhatóság, az azonosság és a titkosítás biztosítása érdekében.
Ez a dokumentum bemutatja, hogyan futtathat előre elkészített tárolórendszerképeket HTTPS-lel.
A fejlesztési forgatókönyvekért lásd: ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS-en keresztül .
Ehhez a mintához a Docker 17.06 verzió vagy újabb, valamint a Docker-ügyfélszükséges.
Előfeltételek
A dokumentumban szereplő utasítások némelyikéhez a .NET Core 2.2 SDK-ra vagy újabbra van szükség.
Tanúsítványok
Egy hitelesítésszolgáltatótól származó tanúsítványra van szükség a termelési környezetben történő hosztinghoz egy tartomány esetén. Let's Encrypt ingyenes tanúsítványokat kínáló hitelesítésszolgáltató.
Ez a dokumentum önaláírt fejlesztési tanúsítványokat használ az előre elkészített rendszerképek localhostkeresztüli üzemeltetéséhez. Az utasítások hasonlóak a gyártási tanúsítványok használatához.
Gyártási tanúsítványok esetén:
- Nincs szükség a
dotnet dev-certseszközre. - A tanúsítványokat nem kell az utasításokban használt helyen tárolni. A tanúsítványokat a helykönyvtáron kívüli bármely helyen tárolhatja.
A következő szakaszban található utasítások kötetbe csatlakoztatják a tanúsítványokat a tárolókba a volumes docker-compose.yml tulajdonság használatával. Egy COPY parancsával tanúsítványokat vehet fel a tárolólemezképekbe, de ez nem ajánlott. A tanúsítványok képre másolása a következő okok miatt nem ajánlott:
- Ez megnehezíti, hogy ugyanazt a képet használják a teszteléshez a fejlesztői tanúsítványokkal.
- Nehezíti ugyanannak a képfájlnak a használatát éles tanúsítványokkal történő üzemeltetéshez.
- A tanúsítvány nyilvánosságra hozatalának jelentős kockázata van.
Tároló indítása https-támogatással a Docker Compose használatával
Az operációs rendszer konfigurációjához kövesse az alábbi utasításokat.
Linux-tárolókat használó Windows
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep "$env:USERPROFILE\.aspnet\https\aspnetapp.pfx" -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
Az előző parancs a .NET PARANCSSOR HASZNÁLATÁVAL:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a $CREDENTIAL_PLACEHOLDER$ egy jelszóra.
Hozzon létre egy docker-compose.debug.yml fájlt a következő tartalommal:
version: '3.4'
services:
webapp:
image: mcr.microsoft.com/dotnet/samples:aspnetapp
ports:
- 80
- 443
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=https://+:443;http://+:80
- ASPNETCORE_Kestrel__Certificates__Default__Password=-\0pw-
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
volumes:
- ~/.aspnet/https:/https:ro
A docker compose fájlban megadott jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Indítsa el a tárolót a HTTPS-hez konfigurált ASP.NET Core-val:
docker-compose -f "docker-compose.debug.yml" up -d
macOS vagy Linux
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
Linuxon dotnet dev-certs https --trust a .NET 9 vagy újabb SDK szükséges. A .NET 8.0.401-en vagy korábbi SDK-n futó Linux esetén tekintse meg a Linux-disztribúció tanúsítványmegbízhatósági dokumentációját.
Az előző parancsokban cserélje le a $CREDENTIAL_PLACEHOLDER$ egy jelszóra.
Hozzon létre egy docker-compose.debug.yml fájlt a következő tartalommal:
version: '3.4'
services:
webapp:
image: mcr.microsoft.com/dotnet/samples:aspnetapp
ports:
- 80
- 443
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=https://+:443;http://+:80
- ASPNETCORE_Kestrel__Certificates__Default__Password=-\0pw-
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
volumes:
- ~/.aspnet/https:/https:ro
A docker compose fájlban megadott jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Indítsa el a tárolót a HTTPS-hez konfigurált ASP.NET Core-val:
docker-compose -f "docker-compose.debug.yml" up -d
Windows, amely Windows-tárolókat használ
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a $CREDENTIAL_PLACEHOLDER$ egy jelszóra.
Hozzon létre egy docker-compose.debug.yml fájlt a következő tartalommal:
version: '3.4'
services:
webapp:
image: mcr.microsoft.com/dotnet/samples:aspnetapp
ports:
- 80
- 443
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=https://+:443;http://+:80
- ASPNETCORE_Kestrel__Certificates__Default__Password=-\0pw-
- ASPNETCORE_Kestrel__Certificates__Default__Path=C:\https\aspnetapp.pfx
volumes:
- ${USERPROFILE}\.aspnet\https:C:\https:ro
A docker compose fájlban megadott jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Indítsa el a tárolót a HTTPS-hez konfigurált ASP.NET Core-val:
docker-compose -f "docker-compose.debug.yml" up -d
Lásd még
ASP.NET Core alapértelmezés szerint HTTPS-t használ. A HTTPStanúsítványokra támaszkodik a megbízhatóság, az azonosság és a titkosítás biztosítása érdekében.
Ez a dokumentum bemutatja, hogyan futtathat előre elkészített tárolórendszerképeket HTTPS-lel.
A fejlesztési forgatókönyvekért lásd: ASP.NET Core-alkalmazások fejlesztése a Dockerrel HTTPS-en keresztül .
Ehhez a mintához a Docker 17.06 verzió vagy újabb, valamint a Docker-ügyfélszükséges.
Előfeltételek
A dokumentumban szereplő utasítások némelyikéhez a .NET Core 2.2 SDK-ra vagy újabbra van szükség.
Tanúsítványok
Egy hitelesítésszolgáltatótól származó tanúsítványra van szükség a termelési környezetben történő hosztinghoz egy tartomány esetén. Let's Encrypt ingyenes tanúsítványokat kínáló hitelesítésszolgáltató.
Ez a dokumentum önaláírt fejlesztési tanúsítványokat használ az előre elkészített rendszerképek localhostkeresztüli üzemeltetéséhez. Az utasítások hasonlóak a gyártási tanúsítványok használatához.
Gyártási tanúsítványok esetén:
- Nincs szükség a
dotnet dev-certseszközre. - A tanúsítványokat nem kell az utasításokban használt helyen tárolni. A tanúsítványokat a helykönyvtáron kívüli bármely helyen tárolhatja.
A következő szakaszban található utasítások kötetbe csatlakoztatják a tanúsítványokat a tárolókba a volumes docker-compose.yml tulajdonság használatával. Egy COPY parancsával tanúsítványokat vehet fel a tárolólemezképekbe, de ez nem ajánlott. A tanúsítványok képre másolása a következő okok miatt nem ajánlott:
- Ez megnehezíti, hogy ugyanazt a képet használják a teszteléshez a fejlesztői tanúsítványokkal.
- Nehezíti ugyanannak a képfájlnak a használatát éles tanúsítványokkal történő üzemeltetéshez.
- A tanúsítvány nyilvánosságra hozatalának jelentős kockázata van.
Tároló indítása https-támogatással a Docker Compose használatával
Az operációs rendszer konfigurációjához kövesse az alábbi utasításokat.
Linux-tárolókat használó Windows
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep "$env:USERPROFILE\.aspnet\https\aspnetapp.pfx" -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
Az előző parancs a .NET PARANCSSOR HASZNÁLATÁVAL:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a $CREDENTIAL_PLACEHOLDER$ egy jelszóra.
Hozzon létre egy docker-compose.debug.yml fájlt a következő tartalommal:
version: '3.4'
services:
webapp:
image: mcr.microsoft.com/dotnet/samples:aspnetapp
ports:
- 80
- 443
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=https://+:443;http://+:80
- ASPNETCORE_Kestrel__Certificates__Default__Password=-\0pw-
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
volumes:
- ~/.aspnet/https:/https:ro
A docker compose fájlban megadott jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval. Az előző parancsokban cserélje le a -\0pw- egy jelszóra.
Indítsa el a tárolót a HTTPS-hez konfigurált ASP.NET Core-val:
docker-compose -f "docker-compose.debug.yml" up -d
macOS vagy Linux
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep ${HOME}/.aspnet/https/aspnetapp.pfx -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
dotnet dev-certs https --trust csak macOS és Windows rendszeren támogatott. A linuxos tanúsítványokban a disztribúció által támogatott módon kell megbíznia. Valószínűleg megbízhatónak kell jelölnie a tanúsítványt a böngészőben.
Az előző parancsokban cserélje le a $CREDENTIAL_PLACEHOLDER$ egy jelszóra.
Hozzon létre egy docker-compose.debug.yml fájlt a következő tartalommal:
version: '3.4'
services:
webapp:
image: mcr.microsoft.com/dotnet/samples:aspnetapp
ports:
- 80
- 443
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=https://+:443;http://+:80
- ASPNETCORE_Kestrel__Certificates__Default__Password=password
- ASPNETCORE_Kestrel__Certificates__Default__Path=/https/aspnetapp.pfx
volumes:
- ~/.aspnet/https:/https:ro
A docker compose fájlban megadott jelszónak meg kell egyeznie a tanúsítványhoz használt jelszóval.
Indítsa el a tárolót a HTTPS-hez konfigurált ASP.NET Core-val:
docker-compose -f "docker-compose.debug.yml" up -d
Windows, amely Windows-tárolókat használ
Tanúsítvány létrehozása és helyi gép konfigurálása:
dotnet dev-certs https -ep %USERPROFILE%\.aspnet\https\aspnetapp.pfx -p $CREDENTIAL_PLACEHOLDER$
dotnet dev-certs https --trust
Az előző parancsokban cserélje le a $CREDENTIAL_PLACEHOLDER$ egy jelszóra.
Hozzon létre egy docker-compose.debug.yml fájlt a következő tartalommal:
version: '3.4'
services:
webapp:
image: mcr.microsoft.com/dotnet/samples:aspnetapp
ports:
- 80
- 443
environment:
- ASPNETCORE_ENVIRONMENT=Development
- ASPNETCORE_URLS=https://+:443;http://+:80
- ASPNETCORE_Kestrel__Certificates__Default__Password=-\0pw-
- ASPNETCORE_Kestrel__Certificates__Default__Path=C:\https\aspnetapp.pfx
volumes:
- ${USERPROFILE}\.aspnet\https:C:\https:ro
The password specified in the docker compose file must match the password used for the certificate. In the preceding commands, replace `-\0pw-` with a password.
Start the container with ASP.NET Core configured for HTTPS:
```console
docker-compose -f "docker-compose.debug.yml" up -d