Az ACR-feladatok alaprendszerkép-frissítései

Ez a cikk háttérinformációkat tartalmaz az alkalmazás alaprendszerképének frissítéseiről, valamint arról, hogy ezek a frissítések hogyan aktiválhatnak egy Azure Container Registry-feladatot.

Mik azok az alaprendszerképek?

A legtöbb tárolórendszerképet meghatározó Dockerfile-fájlok egy szülőrendszerképet határoznak meg, amelyből a rendszerkép alapul, amelyet gyakran alaprendszerképnek neveznek. Az alapként szolgáló rendszerképek általában az operációs rendszert tartalmazzák (például Alpine Linux vagy Windows Nano Server), amelyre a tároló többi szintje alkalmazva lesz. Alkalmazás-keretrendszereket is tartalmazhatnak, például a Node.js vagy a .NET Core keretrendszert. Ezek az alaprendszerképek általában nyilvános, felsőbb rétegbeli képeken alapulnak. Előfordulhat, hogy az alkalmazásképek közül több is közös alaprendszerképet használ.

A rendszerképek kezelői gyakran frissítik az alapként szolgáló rendszerképet, hogy új szolgáltatásokkal és javításokkal bővítsék a rendszerképben található operációs rendszert vagy keretrendszert. A biztonsági javítások jelentik az alapként szolgáló rendszerkép frissítésének egy másik gyakori okát. Amikor ezek a felsőbb rétegbeli frissítések történnek, frissítenie kell az alaprendszerképeket is, hogy a kritikus javítást is tartalmazza. Ezután minden alkalmazásképet újra kell létrehozni, hogy az alaprendszerkép tartalmazza ezeket a felsőbb rétegbeli javításokat.

Bizonyos esetekben, például egy magánfejlesztési csapatnál, az alaprendszerképek az operációs rendszernél vagy a keretrendszernél többet is megadhatnak. Az alaprendszerkép lehet például egy olyan megosztott szolgáltatásösszetevő rendszerképe, amelyet nyomon kell követni. Előfordulhat, hogy a csapat tagjainak nyomon kell követnie ezt az alaprendszerképet tesztelés céljából, vagy rendszeresen frissítenie kell a rendszerképet az alkalmazásképek fejlesztésekor.

Alaprendszerképek másolatainak karbantartása

Az olyan tartalom esetében, amely a nyilvános beállításjegyzékben ( például a Docker Hubban) tárolt alaptartalomtól függ, javasoljuk, hogy másolja a tartalmat egy Azure-tárolóregisztrációs adatbázisba vagy egy másik magánregisztrációs adatbázisba. Ezután győződjön meg arról, hogy az alkalmazásrendszerképeket a privát alaprendszerképekre való hivatkozással hozza létre. Az Azure Container Registry rendszerkép-importálási képességet biztosít a nyilvános adatbázisokból vagy más Azure-tárolóregisztrációs adatbázisokból származó tartalom egyszerű másolásához. A következő szakasz az ACR-feladatok használatával követi nyomon az alaprendszerkép-frissítéseket az alkalmazásfrissítések létrehozásakor. Az alaprendszerkép-frissítéseket saját Azure-tárolóregisztrációs adatbázisaiban és opcionálisan a felsőbb szintű nyilvános regisztrációs adatbázisokban is nyomon követheti.

Alaprendszerkép-frissítések nyomon követése

Az ACR Tasks lehetővé teszi a rendszerképek automatikus összeállítását a tárolók alapként szolgáló rendszerképének frissítésekor. Ezzel a képességgel karbantarthatja és frissítheti a nyilvános alaprendszerképek másolatait az Azure-tárolóregisztrációs adatbázisokban, majd újraépítheti az alaprendszerképtől függő alkalmazásképeket.

Az ACR Tasks dinamikusan felderíti az alaprendszerkép-függőségeket egy tárolólemezkép létrehozásakor. Ennek eredményeképpen képes észlelni az alkalmazáslemezkép alaprendszerképének frissítését. Egy előre konfigurált buildelési feladattal az ACR-feladatok automatikusan újraépíthetik az alaprendszerképre hivatkozó alkalmazásképeket. Ezzel az automatikus észleléssel és újraépítéssel az ACR Tasks időt és erőfeszítést takarít meg, amely általában szükséges a frissített alaprendszerképre hivatkozó minden egyes alkalmazásrendszerkép manuális nyomon követéséhez és frissítéséhez.

Alaprendszerkép helyei

Dockerfile-ból származó rendszerkép-buildek esetén az ACR-feladat az alábbi helyeken észleli az alaprendszerképek függőségeit:

  • Ugyanaz az Azure-tárolóregisztrációs adatbázis, ahol a feladat fut
  • Egy másik privát Azure-tárolóregisztrációs adatbázis ugyanabban vagy egy másik régióban
  • Nyilvános adattár a Docker Hubban
  • Nyilvános adattár a Microsoft Container Registryben

Ha az FROM utasításban megadott alaprendszerkép ezen helyek egyikén található, az ACR-feladat egy horoggal biztosítja, hogy a rendszerkép az alap frissítésekor újraépüljön.

Alaprendszerkép-értesítések

Az alaprendszerkép frissítésekor és a függő tevékenység aktiválása között eltelt idő az alaprendszerkép helyétől függ:

  • Nyilvános adattárból származó alapképek a Docker Hubban vagy az MCR-ben – A nyilvános adattárakban lévő alapképek esetében az ACR-feladat 10 és 60 perc közötti véletlenszerű időközönként ellenőrzi a rendszerképek frissítését. A függő tevékenységek ennek megfelelően futnak.
  • Alaprendszerképek egy Azure-tárolóregisztrációs adatbázisból – Az Azure-tárolóregisztrációs adatbázisok alaprendszerképei esetében az ACR-feladatok azonnal elindítják a futtatást az alaprendszerkép frissítésekor. Az alaprendszerkép ugyanabban az ACR-ben lehet, ahol a feladat fut, vagy bármely régióban más ACR-ben.

Additional considerations

  • Alaprendszerképek alkalmazásképekhez – Az ACR-feladat jelenleg csak az alkalmazás-(futtatókörnyezeti) rendszerképek alapképfrissítéseit követi nyomon. Nem követi nyomon a többfázisú Dockerfile-fájlokban használt köztes (buildtime) rendszerképek alaprendszerkép-frissítéseit.

  • Alapértelmezés szerint engedélyezve – Ha ACR-feladatot hoz létre az az acr-feladat létrehozási parancsával, a feladat alapértelmezés szerint engedélyezve van az eseményindítóhoz egy alaprendszerkép-frissítéssel. Vagyis a base-image-trigger-enabled tulajdonság értéke Igaz. Ha le szeretné tiltani ezt a viselkedést egy feladatban, frissítse a tulajdonságot Hamis értékre. Futtassa például a következő az acr-feladatfrissítési parancsot:

    az acr task update --registry myregistry --name mytask --base-image-trigger-enabled False
    
  • Függőségek nyomon követésére szolgáló eseményindító – Ha engedélyezni szeretné egy ACR-tevékenység számára a tárolólemezkép függőségeinek meghatározását és nyomon követését – amely tartalmazza az alaprendszerképet –, először aktiválnia kell a feladatot, hogy legalább egyszer létrehozza a rendszerképet. Aktiválja például manuálisan a feladatot az az acr feladatfuttatási paranccsal.

  • Stabil címke az alaprendszerképhez – Ha az alaprendszerkép-frissítéskor aktiválni szeretne egy feladatot, az alaprendszerképnek stabil címkével kell rendelkeznie, például node:9-alpine. Ez a címkézés jellemző az operációs rendszerrel és a keretrendszer javításaival frissített alaprendszerképekre egy legújabb stabil kiadásra. Ha az alaprendszerkép új verziócímkével frissül, az nem indít el feladatot. A képcímkézéssel kapcsolatos további információkért tekintse meg az ajánlott eljárásokat ismertető útmutatót.

  • Egyéb tevékenységindítók – Az alaprendszerkép-frissítések által aktivált tevékenységekben a forráskód véglegesítése vagy ütemezése alapján is engedélyezheti az eseményindítókat. Az alaprendszerkép-frissítés többlépéses feladatokat is elindíthat.

További lépések

Az alábbi oktatóanyagok az alkalmazásrendszerképek buildjeinek automatizálására vonatkozó forgatókönyveket ismertetik az alaprendszerkép frissítése után: