Lägg till volymer och filer
Ge en komponent en beständig disk, arbetsyta eller konfigurationsfiler och montera dem i dess containrar, via CLI:t eller API:et.
Kräver: containerinstance/write
Portalen visar en komponents volymer men redigerar dem inte. Volymer deklareras via CLI:t eller
API:et — eller i en blueprintmall — som en del av komponenten och kräver containerinstance/write.
Deklarera en volym
En komponents lista volumes rymmer upp till 8 volymer. Var och en har ett name — gemener,
siffror och bindestreck, med en bokstav först, unikt i komponenten — och exakt en av dessa:
persistent— en disk som överlever omstarter och omdistributioner.size— hur stor, som en Kubernetes-kvantitet som10Gi. Den kan inte ändras när volymen väl finns.retainOnDelete—truesom standard: disken behålls när instansen eller komponenten tas bort.falsetar bort den tillsammans med dem.fsGroup— gruppen som äger diskens filer, för avbilder som inte körs som root. Komponenten använder det första värde som dess beständiga volymer anger, och 65532 när ingen anger något.
emptyDir— arbetsyta som komponentens containrar delar och som försvinner med podden.sizeLimitsätter ett tak, till exempel1Gi.files— filer vars innehåll du skriver in i instansens konfiguration.content— en mappning från filnamn till filens text. Filnamn använder bokstäver, siffror,.,_och-.sensitive—truelagrar filerna som en hemlighet och döljer innehållet när instansen läses.
En komponent med en beständig volym kör 0 eller 1 repliker och kan inte autoskala.
Montera den i en container
En volym syns bara i de containrar som monterar den. Varje containers lista mounts anger:
volume— en volym i samma komponent.path— var den visas i containern: en absolut sökväg, inte/, utan.., inte under/proc,/sys,/dev,/var/runeller/etc/kubernetes, och bara använd en gång per container.subPath— valfritt: montera en fil ur volymen i stället för hela. Då kan en enskild konfigurationsfil ligga bredvid de filer som avbilden redan har i den katalogen.readOnly— valfritt,falsesom standard.
Uppdatera instansen
En komponent ersätts i sin helhet när instansen uppdateras, så filen innehåller varje komponent
fullständigt — de containrar, portar, variabler och kommandon du behåller lika väl som de volymer du
lägger till. Utgå från instansen som den är: stsh ci get web -o json visar dess components. Lägg
bara components i filen:
{
"components": [
{
"name": "main",
"replicas": 1,
"startupOrder": 1,
"computePlan": "small",
"containers": [
{
"name": "main",
"image": "nginx",
"tag": "1.27",
"ports": [{ "name": "http", "port": 80, "protocol": "TCP" }],
"mounts": [
{ "volume": "config", "path": "/etc/nginx/conf.d/default.conf", "subPath": "default.conf", "readOnly": true },
{ "volume": "site", "path": "/usr/share/nginx/html" }
]
}
],
"volumes": [
{ "name": "config", "files": { "content": { "default.conf": "server { listen 80; root /usr/share/nginx/html; }" } } },
{ "name": "site", "persistent": { "size": "5Gi" } }
]
}
]
}stsh ci update web -g my-resource-group --file components.jsonNär du sparar ersätts poddarna för varje komponent vars konfiguration ändrats, filinnehåll inräknat.
Gränser för filer
- Högst 16 filer i en
files-volym. - Högst 900 KiB namn och innehåll i en volym, och 1 MiB sammanlagt i instansens alla
files-volymer. - Innehållet är text.
Känsliga filer
När en instans läses returneras <redacted> i stället för innehållet i varje känslig fil. Skickar
du tillbaka <redacted> behålls det lagrade innehållet, så en instans som läses och skrivs tillbaka
oförändrad behåller sina filer; skicka den nya texten för att ändra en fil. Revisioner lagrar också
den maskerade formen — se Jämför och återställ revisioner.