Shanraq.org Shanraq.org
Registry, өзгермейтін тег, SBOM және жеткізу тізбегін тексеру
IT

Cloud & DevOps: жергілікті қолданбадан сенімді сервиске дейін 13-сабақ (барлығы 24)

Registry, өзгермейтін тег, SBOM және жеткізу тізбегін тексеру

Бейнені commit SHA-мен байланыстырып, SBOM алып, жариялау алдында мазмұнды сканерлейміз.

Мәтін ИИ көмегімен аударылды.

Бұл сабақ нөлден басталады. Бейтаныс сөз сіздің кемшілігіңіз емес: алдымен бейне құрамыз, кейін дәл мағына беріп, содан соң қолданамыз.

Қай жерде тұрмыз

Қысқа қайталау. Өткен сабақтың тірегі liveness: restart? | readiness: traffic беру? | limits: қанша?. Қарамай төрт буынды атаңыз, содан кейін ғана жазбамен салыстырыңыз.

Сабақ нәтижесі

Бейнені commit SHA-мен байланыстырып, SBOM алып, жариялау алдында мазмұнды сканерлейміз. Әр пәрмен нені тексеретінін және қандай ақауды табатынын түсіндіре алмайынша келесі сабаққа өтпеңіз.

Алдымен таныс бейне

Қойма қорапты сақтайды, бірақ бұл ішіндегі сапаны дәлелдемейді. Registry — образ қоймасы. Digest — нақты қорап мөрі, SBOM — ішкі бөлшек тізімі, scanner — тізімді белгілі мәселелермен салыстыру.

Аналогия ойды бастауға көмектеседі, бірақ технология құрылысын алмастырмайды. Төменде әр сөзді нақтылаймыз.

Сабақтың тірек сигналы

commit → image → digest → registry → SBOM/scan → deploy

Тізбекті солдан оңға оқыңыз. Ол «қай пәрменді жаттаймын?» емес, «келесі қадам неге алдыңғысынан шығады?» дегенге жауап береді.

Жаңа сөздер қарапайым тілмен

  • Registry — Контейнер образын сақтап, тарататын сервис.
  • Immutable — Жарияланған соң өзгермейді; жаңа нұсқа жаңа сәйкестік алады.
  • SBOM — Артефакт ішіндегі бағдарлама компоненті мен нұсқасының тізімі.
  • Vulnerability — Контексте қолданылуын тексеру қажет белгілі әлсіздік.

Асықпай талдаймыз

Registry бейнені сақтап таратады, бірақ жүктеу фактісі сенім туғызбайды. Нұсқа өзгермейтін, шығу тегі қадағаланатын, тәуелділік көрінетін болуы керек. SBOM компонентті тізеді; сканер оны белгілі осалдықпен салыстырады, бірақ барлық қатенің жоқтығын дәлелдемейді.

Анықтаманы сөзбе-сөз жаттамаңыз. Себептік байланысты тауып, жоғарыдағы тірекпен қосыңыз.

Алдымен нәтижені болжаңыз

Іске қоспай тұрып қағазға жазыңыз: не өзгеруі, не сол күйде қалуы және қай output болжамды дәлелдеуі тиіс? Қате болжам да айырманы түсіндіре алсаңыз пайдалы.

Шағын қадаммен тәжірибе

Пәрмендерді course/cloud-devops-lab түбірінен орындаңыз. Пәрмендер оқу ортасына арналған. Серверді не деректі өзгертетін пәрменді іске қоспас бұрын оны толық оқып, ағымдағы қалтаны тексеріңіз. Блокты мағыналық топпен орындаңыз. Әр топтан кейін тоқтап, нәтижені болжаммен салыстырыңыз.

sha=$(git rev-parse --short=12 HEAD)
docker build --build-arg VERSION="$sha" -t "cloudlab:$sha" .
docker image inspect "cloudlab:$sha" --format '{{.Id}}'
printf 'release=%s\n' "$sha"

Жобаның эталон файлдары.

Бұл тәжірибе нақты не істейді

Пәрмен образды қысқа SHA-мен атап, digest және тізім жасайды. Scanner жоқ болса, сабақ жалған success көрсетпейді: күтілетін артефактты түсініп, құралды бөлек орнатыңыз.

Не шығуы тиіс

  • Тег бастапқы commit SHA-ға тең.
  • Пәрмен болжамды кодпен аяқталады.
  • Нәтижені таза ортада қайталауға болады.

Тірек сызбамен тұтасты жинаңыз

Тірек сызба 13

Төрт блок бойынша жүріп, бүкіл сабақты бір байланысқан әңгімемен түсіндіріңіз.

Көмексіз жаңғыртыңыз

  1. Сызбаны жауып, төрт блокты жатқа сызыңыз.
  2. Әр өтуді «себебі» сөзімен түсіндіріңіз.
  3. Бір жаңа терминді мәтінді қайталамай анықтаңыз.
  4. Нәтижені дәлелдейтін бір сигналды атаңыз.

Қатені тауып түзетіңіз

Қате: «Scanner CVE таппаса, образ қауіпсіз». Дұрысы: база толық емес, config пен өз кодыңыз да осал болуы мүмкін.

Тапсырма

Енді сол мағынаны өзіңіз жинаңыз. Тірек сызбаға қарауға болады; мақсат — жады емтиханы емес, қайталанатын нәтиже.

Міндетті. 12 таңбалы Git SHA-дан тег құрып, бейне жинап, оның жергілікті image ID-сын басатын POSIX sh скриптін жазыңыз; latest қолданбаңыз. Тек POSIX sh пәрменін не скриптін, нақты кілт пен токенсіз жіберіңіз.

Дайындық өлшемдері

  • Әр іске қосылатын жолды түсінесіз.
  • Қайталау күтілетін нәтиже не қауіпсіз түсіндірілген айырма береді.
  • Output ішінде нақты key, token және password жоқ.
  • Success-ті дәлелдейтін факт көрсете аласыз.

Тексеру өтпесе, күтілген және нақты нәтижені жазып, тіректің бір үзілген буынына оралып қайталаңыз. Қате оқу құқығын алып қоймайды.

Қалауыңызша. Бір ықтимал ақауды және оны байқайтын сигналды жазыңыз.

Ашық перспектива

Келесі сабақ жаңа тірек қосады: CI/CD кері байланыс жүйесі ретінде.

Курс мазмұны

Мәтінде қате не теру қатесі кездессе, бізге айтыңыз

Тапсырманы тексеру

Алдымен VS Code-та шешіп, іске қосыңыз — редактор қатені сол жерде көрсетеді. Дайын шешімді осында қойыңыз. Тексеретін — модель: ол қатені атап көрсетеді, бірақ дайын жауапты бермейді.

Тексеру үшін кіру керек. Кіру

Пікірлер (0)

Әзірге пікір жоқ. Бірінші болыңыз.