Како да креирате ефикасне Питхон Доцкер слике

Како да креирате ефикасне Питхон Доцкер слике
Читаоци попут вас помажу у подршци МУО. Када обавите куповину користећи везе на нашем сајту, можда ћемо зарадити провизију за партнере. Опширније.

Доцкер је индустријски стандардни софтвер за паковање и постављање апликација у контејнере. Доцкер слике су камен темељац на коме можете да градите и покрећете своје апликације.





Да бисте откључали пуни потенцијал Доцкер-а, потребно је да оптимизујете своје слике за ефикасност ресурса, безбедност и перформансе. Ово ће обезбедити да ваше апликације беспрекорно функционишу у Доцкер екосистему.





Научите како да то урадите на примеру из стварног света који показује како да контејнеризујете апликацију Питхон калкулатора.





Почевши од минималне основне слике

Један од фактора који утичу на ефикасност Доцкер слике је избор основне слике. Требало би да почнете са минималном сликом која укључује само основне компоненте потребне за покретање ваше апликације.

Слика коју користите такође треба да буде из поузданог извора који обезбеђује безбедносна ажурирања и закрпе. Требало би да има активну заједницу и добру документацију. Ово је корисно када решавате проблеме или тражите помоћ.



За апликацију калкулатора, бирање питхон:3.11-слим-боокворм , што је минимална слика, смањује величину слике. Ово, заузврат, минимизира потрошњу ресурса и убрзава преузимање и примену слика.

Ц628Ф4763ФЦ4Е15ЕА66828Б4907ЦЦ71Д89Е31637

Можете користите још мању слику Алпине Линук-а , избором за питхон:3.11-алпине. Међутим, ова слика не укључује Питхон интерпретер, менаџер пакета и уобичајене Питхон библиотеке.





Покретање апликација као корисници који нису роот

Покретање Доцкер контејнера као роот корисник може представљати значајне безбедносне ризике. Ако злонамерни актер добије приступ контејнеру који ради као роот, може да искористи рањивости у софтверу контејнера да повећа своје привилегије. Они тада могу да користе ове привилегије за извршавање команди са потпуном контролом над хост системом.

Решење је покретање ваших апликација као не-роот корисник . Пример калкулатора креира и конфигурише корисника калкулатор .





403ДЕ493968Ф60АФ2ДБ8Е2ФФ879Е934Е5Ф6АДА18

Креирање наменског корисника за вашу апликацију ограничава дозволе доступне потенцијалним нападачима. Ово отежава искоришћавање рањивости.

Копирање потребних датотека и креирање виртуелног окружења

Креирање виртуелног окружења унутар Доцкер контејнера изолује зависности. Ово спречава сукобе са системским пакетима и другим апликацијама. Такође обезбеђује компатибилност верзија јер можете да инсталирате тачне верзије зависности које су потребне вашој апликацији, без утицаја на остатак система.

Копирајте потребне датотеке у контејнер. Затим креирајте виртуелно окружење за апликацију калкулатора користећи уграђени Питхон венв модул.

07Д3А59БА89А9ЦЕД88ФАЕ1Б3381Б0849527812Е6

Виртуелна окружења су лагана и ефикасна, јер не дуплирају пакете за читав систем. Ово помаже да величина Доцкер слике буде мања и смањује потрошњу ресурса када је контејнер покренут.

Минимизирање слојева ради ефикасности

Свака инструкција у Доцкерфиле-у ствара нови слој у резултујућој слици. Доцкер користи механизам копирања на писање за управљање овим слојевима. Смањење броја слојева у Доцкер слици значајно побољшава величину слике и перформансе изградње. Један од начина за смањење слојева је консолидовање више команди у једну ТРЦАТИ упутство.

7Е24781ЕЦ0ЦБЦЦ5Ц29А286ЦЕ46528ДФДА16Б1ЕЕЕ

Комбиновањем горњих команди смањује се број међуслојева креираних током процеса изградње слике.

где могу бесплатно да учитам музику

Осигурање руковања конфигурацијом

Руковање осетљивим информацијама унутар Доцкер слике представља безбедносни ризик. Да бисте побољшали безбедност, требало би да користите променљиве окружења и екстерне конфигурационе датотеке. У примеру апликације калкулатора, можете креирати именик под називом /цонфиг за чување вашу конфигурациону датотеку и поставити одговарајуће власништво.

БЕ74Ф4009Е93БЦ2953ЕФБ8047Е2Е28757ФБ9947Е

Затим копирајте цонфиг.јсон датотеку у овај директоријум, осигуравајући да остане одвојена од кода апликације.

204ЦБ6Д2Ф59008397Д35052531385ББД0Ф65Ф07Б

Одвајање података о конфигурацији од кода и примена одговарајућих дозвола побољшава укупну безбедност ваше Доцкер слике. Осигурава да само овлашћени процеси или корисници имају приступ критичним конфигурационим подацима.

Коришћење вишестепених градњи

Вишестепене градње вам омогућавају да одвојите окружење за изградњу од коначне слике. Ово резултира мањим, фокусиранијим продукцијским сликама. Такође побољшава безбедност тако што из коначне слике искључује алате и датотеке везане за изградњу. Ово смањује површину напада и минимизира потенцијалне безбедносне ризике повезане са непотребним компонентама.

619013039258ФДЦАЦ66БЕФ048Д593Ц7Ц86132Ф46

Горњи код само копира неопходне артефакте из фазе изградње (градитељ) у коначну слику. Ово смањује величину слике искључујући алате и датотеке везане за изградњу које нису потребне за покретање апликације калкулатора.

Повећање безбедности помоћу скенирања слика

Да бисте додатно побољшали безбедност својих Доцкер слика, користите алате за скенирање слика као што су Триви или Цлаир. Ови алати су дизајнирани да идентификују рањивости у слојевима слике и зависности. Користите Триви за апликацију калкулатор, да спровести скенирање рањивости .

Д10966Е0Ф401Ф7Д810Ф40334А48Ц92Б5ЕБ614А73

Додавање Триви скенирања рањивости вашој Доцкер слици је кључно. То је зато што користи базу података Цоммон Вулнерабилитиес анд Екпосурес (ЦВЕ), која се редовно ажурира информацијама о познатим рањивостима. Ово вам помаже да своје слике ажурирате најновијим безбедносним закрпама и заштитите своје апликације од познатих експлоатација.

Да бисте добили извештај о рањивости на вашој слици, користите следећу команду.

ФБ2Ф07444ЦДА47013Ц2Ц15Д5597ЦД0Ц10099Е6ДБ

Горњој команди ће требати неко време да се покрене. Када се заврши, генерисаће извештај попут оног испод.

  Триви извештај о рањивости на терминалу

Што је већа озбиљност, брже треба да решите идентификовану рањивост.

Покретање апликација као корисници који нису роот

Да бисте побољшали безбедност, покрените апликацију као цалцулато р корисник да ограничи потенцијалне рањивости.

6302Ц68А8Д585Ц5ББД6Ф86АД402ЦД8802Ф26ЕД69

Пребацивање на не-роот корисника минимизира површину напада.

Контејнерисање апликација које нису Питхон

Доцкер контејнеризација апликација које покрећу други језици је мало другачија. Требало би да се упознате са начином на спремање различитих типова апликација. Ово ће вам помоћи да одлучите о најбољој стратегији коју ћете усвојити на основу типа језика који ваша апликација користи.