|
|
Publicēts 23.12.2023 17:30:10
|
|
|
|

Pirms .NET 8 konteineri pēc noklusējuma darbojās kā root, un, sākot ar .NET 8, visi mūsu Linux konteineru attēli saturēs lietotājus, kas nav root. Jūs varēsiet viesot .NET konteinerus ar vienu koda rindiņu kā lietotājs, kas nav saknes lietotājs. Šīs platformas līmeņa izmaiņas padarīs jūsu lietojumprogrammu drošāku un padarīs .NET par vienu no drošākajām izstrādātāju ekosistēmām. Tās ir nelielas izmaiņas, bet tām ir liela ietekme uz aizsardzību padziļināti.
Izpratne par UID un GID Docker konteineros
Pēc noklusējuma process konteinerā darbojas ar root lietotāja atļaujām, un šis saknes lietotājs ir tas pats lietotājs kā sakne resursdatorā. Vai tas neizklausās biedējoši, jo tas nozīmē, ka, tiklīdz procesam konteinerā ir pareiza iespēja, tas var kontrolēt visu resursdatorā!
Atsauce:Hipersaites pieteikšanās ir redzama.
.NET 8 Docker attēls
.NET 8 Docker attēlā ir divas galvenās izmaiņas:
- Attēls izveido jaunu programmas kontu un grupu un pēc noklusējuma palaiž programmu ar programmas kontu
- Pārslēdzoties uz 8080. portu, tas izrādījās 80. ports, jo 80. osta ir priviliģēta osta, ir nepieciešamas saknes privilēģijas (vismaz dažās vietās)
.NET Docker attēla avota koda adrese:Hipersaites pieteikšanās ir redzama.
Atkarības ir šādas:
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 izskatās šādi:
Kā parādīts zemāk:
Izmantojiet lietotnes kontu, lai ievadītu pamata attēlu, un komanda ir šāda:
Izvadiet pašreizējos lietotāja un vides mainīgos, kā parādīts šajā attēlā:
Atsauce:Hipersaites pieteikšanās ir redzama.
Dockerfile fails
Ja jums ir nepieciešams iepakot savu projektu Docker attēlā, jums jāizveido jauns .NET 8 Docker konteinera atbalsts, un noklusējuma Linux vides Dockerfile faila konfigurācija ir šāda:
Ja iestatāt sistēmas laika joslu Dockerfile, šāds kods:
Kļūda Atļauja liegta var rasties šādi:
4>F:\itsvse\Dockerfile: kļūdas CTC1014: #21 [galīgais 3/3] RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai > /etc/timezone 4>F:\itsvse\Dockerfile: kļūdas CTC1014: #21 0.314 ln: neizdevās izveidot simbolisku saiti '/etc/localtime': atļauja liegta 4>F:\itsvse\Dockerfile: kļūdas CTC1014: #21 KĻŪDA: process "/bin/sh -c ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone" netika veiksmīgi pabeigts: izejas kods: 1 4>F:\itsvse\Dockerfile: kļūdas CTC1014: ------ 4>F:\itsvse\Dockerfile: kļūdas CTC1014: > [galīgais 3/3] RUN ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo Asia/Shanghai > /etc/timezone: 4>F:\itsvse\Dockerfile: kļūdas CTC1014: #21 0.314 ln: neizdevās izveidot simbolisku saiti '/etc/localtime': atļauja liegta Izmantojiet saknes kontu, lai iestatītu laika joslu, pēc tam pārslēdzieties atpakaļ uz programmas kontu un modificējiet to šādi:
(Beigas)
|
Iepriekšējo:.NET/C#, lai apkopotu metodi ToLookupNākamo:PHP iegūst visu galvenes informāciju
|