Skapa en containerinstans
Skapa en containerinstans i portalen — namn och placering, avbild och register, miljö och kommando, beräkningsplan, portar och publik exponering — eller med CLI:t.
Kräver: containerinstance/write
För att skapa en instans behöver du behörigheten containerinstance/write i resursgruppen; rollerna
Owner, Contributor, Apps Operator och Blueprints Operator har den.
Öppna guiden
Öppna Container Instanser i sidomenyn i portalen på https://portal.example.com och välj Skapa Containerinstanser. Guiden Skapa containerinstans har sex steg: Grunder, Avbildning, Körning, Beräkning, Nätverk och Granska. Nästa kontrollerar ett steg innan du går vidare, och Skicka i sista steget skapar instansen.
Guiden skapar en komponent, main, med en container. Fler komponenter, containrar, slutpunkter och
volymer kan läggas till när instansen finns.
Grunder
- Instansnamn — 3 till 50 tecken: gemener, siffror och bindestreck, utan bindestreck först eller sist, och unikt i resursgruppen. Börja namnet med en bokstav: ett namn som börjar med en siffra godtas, men Kubernetes vägrar klusternamnet för en komponent med portar, och instansen hamnar i Error utan något meddelande om varför. Namnet kan inte ändras senare; det ingår i instansens klusternamn och i dess standardvärdnamn.
- Boundary, Cluster och Resource group — var instansen körs. Varje fält fylls i åt dig när det bara finns ett val.
Avbildning
- Avbildning — förrådet, utan tagg eller digest:
ghcr.io/acme/worker. Gemener; registrets värdnamn får ha en port, som iregistry.example.com:5000/team/worker. - Tagg — en tagg som
1.4.2(standard ärlatest), eller en digest skrivensha256:följt av 64 hexadecimala tecken. En tagg görs om till en digest när instansen driftsätts, så en nyare avbild som pushas under samma tagg hämtas inte förrän du distribuerar om — se Avbilder och uppdateringar. En digest låser avbilden exakt. - Privat register — behåll Publik avbild — inga uppgifter behövs för en publik avbild. För
en privat avbild väljer du registret att hämta genom. Listan visar de privata register som är
anslutna som distributionskällor i boundaryn; anslut ett först under Distributionskällor — se
Privat register. Instansen lagrar bara vilken
källa som ska användas, aldrig inloggningsuppgifterna. Att använda en källa kräver
kernel/deployments/readpå boundaryn; utan den vägrar plattformen skapa instansen, och senare att spara ändringar i den.
Körning
- Miljövariabler — välj Lägg till variabel, ge den ett Namn och välj dess Källa:
Literal med ett Värde, eller Valvhemlighet med ett valv och en nyckel. Ett literalt
värde lagras i klartext och syns i revisionshistoriken, så använd en valvhemlighet för allt som är
känsligt. Importera .env ersätter de literala variablerna med innehållet i en
.env-fil och behåller de valvbaserade. - Kommando och Argument — Kommando ersätter avbildens
ENTRYPOINT, Argument dessCMD. Lämna båda tomma för att köra avbilden som den byggdes.
En container som använder en valvhemlighet måste ange sitt kommando — avbildens ENTRYPOINT —
eftersom plattformen levererar värdena genom att kapsla in det; steget säger till när det saknas. Se
Ange kommandot.
När instansen skapas får dess identitet Secrets Reader på varje valv som en variabel refererar till, med dina behörigheter: du behöver rollen Owner på valvet, dess resursgrupp eller boundaryn, tilldelad dig direkt eller aktiverad via just-in-time-åtkomst. Har du den inte erbjuder steget att begära tillfällig åtkomst, och plattformen vägrar skapa instansen tills du har den — se När det sker åt dig. Varje senare sparning av instansen gör samma tilldelning igen och kräver därför samma roll — se Behörigheter.
Beräkning
- Beräkningsplan — hur mycket CPU och minne komponenten får; varje kort visar planens namn, CPU och minne. Planerna finns i Beräkningsplaner. När boundaryn begränsar vilka planer som får användas visas de andra, men de går inte att välja, med skälet.
- Repliker — hur många kopior av komponenten som ska köras, 0 till 10. Med 0 skapas instansen stoppad.
Nätverk
- Portar — portarna containern lyssnar på, var och en med Namn, Port och Protokoll
(TCP eller UDP). Guiden börjar med en TCP-port som heter
httppå 8080. Ett portnamn är upp till 15 gemener, siffror eller bindestreck och börjar med en bokstav. En arbetare som inte lyssnar på något kan sakna portar. En deklarerad port nås inom boundaryn oavsett om den exponeras — se Hur en instans nås. - Exponera publikt — av som standard, vilket håller instansen intern. Påslaget får instansen en
HTTPS-slutpunkt som heter
web. - Port att exponera — visas när containern har mer än en TCP-port: porten slutpunkten skickar trafik till. En UDP-port kan inte exponeras här.
- Eget värdnamn (valfritt) — lämna tomt för att använda plattformens värdnamn som visas under Publik URL, eller ange en egen domän, som behöver en DNS-post som pekar på plattformen innan dess certifikat kan utfärdas. Se Värdnamn.
Slutpunkter med lastbalanserare, sökvägsroutning och inloggningsskydd läggs till senare, på fliken Slutpunkter.
Granska
Granska visar inställningarna för avbild, beräkning, nätverk och körning. Skicka skapar instansen och går tillbaka till listan. Instansen är Creating tills dess poddar är redo och sedan Running; följ den på instansens flik Operations — se Operationer.
Med CLI:t
CLI:t och API:et tar emot instansen som plattformen lagrar den: en lista med komponenter och en lista med slutpunkter. Spara definitionen som en fil:
{
"components": [
{
"name": "main",
"replicas": 1,
"startupOrder": 1,
"computePlan": "small",
"containers": [
{
"name": "main",
"image": "ghcr.io/acme/worker",
"tag": "1.4.2",
"ports": [{ "name": "http", "port": 8080, "protocol": "TCP" }]
}
]
}
],
"endpoints": [
{ "name": "web", "component": "main", "port": "http", "expose": "ingress" }
]
}och skapa instansen från den:
stsh ci create worker -g my-resource-group -c my-cluster --file instance.jsonEn container hämtar via ett privat register när dess sourceRef är id:t för den
distributionskällan. En ingress-slutpunkt utan hostname får plattformens värdnamn.