Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 3344|Válasz: 1

[Forrás] Docker alapkép változások .NET 8-hoz

[Linket másol]
Közzétéve 2023. 12. 23. 17:30:10 | | | |
A .NET 8 előtt a konténerek alapértelmezés szerint root formátumban futottak, és a .NET 8-tól kezdve minden Linux konténer képünk nem root felhasználókat tartalmaz. Nem root felhasználóként egyetlen kódsorral .NET konténereket lehet üzemeltetni. Ez a platformszintű változás biztonságosabbá teszi az alkalmazásodat, és a .NET-et az egyik legbiztonságosabb fejlesztői ökoszisztémává teszi. Ez apró változás, de nagy hatással van a védelem mélységére.

Ismerd meg a Docker konténerek UID-jeit és GID-jeit

Alapértelmezés szerint a konténerben lévő folyamat root felhasználói jogosultságokkal fut, és ez a root felhasználó ugyanaz a felhasználó, mint a gazdagép gyökere. Nem hangzik ez ijesztően, mert azt jelenti, hogy ha egy folyamatnak egy tartályban megvan a megfelelő esélye, mindent irányíthat a gazdagépen!

Utalás:A hiperlink bejelentkezés látható.

.NET 8 Docker kép

Két fő változás van a .NET 8 Docker képen, az alábbiakban:

  • Az Image létrehoz egy új alkalmazásfiókot és csoportot, és alapértelmezetten futtatja az alkalmazást az alkalmazásfiókkal
  • Átváltva a 8080-as portra, kiderült, hogy 80-as port, mivel a 80-as port kiváltságos port, root jogosultságokra (legalábbis bizonyos helyeken) szükség van


.NET Docker kép forráskód cím:A hiperlink bejelentkezés látható.

A függőségek a következők:

aspnet:8.0-bookworm-slim -> dotnet/runtime-8.0.0-bookworm-slim-amd64 -> dotnet/runtime-deps-8.0.0-bookworm-slim-amd64 -> amd64/debian:bookworm-slim

dotnet/runtime-deps-8.0.0-bookworm-slim-amd64 így néz ki:

Ahogy az alábbiakban látható:



Az alkalmazás fiókkal írd be az alapképet, és a parancs a következő:

A jelenlegi felhasználói és környezeti változók kimenete, ahogy az alábbi ábrán látható:



Utalás:A hiperlink bejelentkezés látható.

Dockerfile fájl

Ha a projektedet Docker képbe kell csomagolnod, új .NET 8 Docker konténer támogatást kell létrehoznod, és az alapértelmezett Linux környezet Dockerfile fájlkonfigurációja a következő:

Ha beállítod a rendszer időzónáját a Dockerfile-ben, a következő kódot írjuk:

Az engedély megtagadása hiba a következőképpen jelentkezhet:

4>F:\itsvse\Dockerfile : error CTC1014: #21 [végső 3/3] RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai > /etc/timezone
4>F:\itsvse\Dockerfile : error CTC1014: #21 0.314 ln: nem sikerült létrehozni szimbolikus linket '/etc/localtime': Engedély megtagadva
4>F:\itsvse\Dockerfile : error CTC1014: #21 ERROR: process "/bin/sh -c ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone" nem sikeresen teljesített: exit code: 1
4>F:\itsvse\Dockerfile : hiba CTC1014: ------
4>F:\itsvse\Dockerfile : error CTC1014: > [végső 3/3] RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai > /etc/timezone:
4>F:\itsvse\Dockerfile : error CTC1014: #21 0.314 ln: nem sikerült létrehozni szimbolikus linket '/etc/localtime': Engedély megtagadva
Használd a root fiókot az időzóna beállításához, majd válts vissza az alkalmazásfiókra, és módosítsd azt a következőként:

(Vége)





Előző:.NET/C# a ToLookup metódus gyűjtéséhez
Következő:A PHP kapja az összes fejlécinformációt
 Háziúr| Közzétéve 2023. 12. 23. 17:31:55 |
Két eszközt ajánlanak a Docker képréteg elemzéséhez
https://www.itsvse.com/thread-10063-1-1.html
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com