Konfigurera Bridge till Kubernetes
Obs
Bron till Kubernetes dras tillbaka den 30 april 2025. Mer information om alternativen för tillbakadragning och öppen källkod finns i GitHub-problem.
Du kan konfigurera den lokala bridge-till-Kubernetes-processen med två metoder. Du kan kommentera tjänster i klustret och du kan ange lokal konfiguration.
Kubernetes-konfiguration
Kubernetes-konfigurationsfilen (kubeconfig) lagras som standard på ~/.kube/config
, men du kan ange den med hjälp av KUBECONFIG-miljövariabeln.
Om du använder Visual Studio kan du redigera Bridge to Kubernetes-startprofilen i IDE:t med hjälp av användargränssnittet Felsökningsstartprofiler i felsökningsegenskaperna. Se Redigera startprofil.
Därifrån kan du öppna följande skärm, vilket ger ett sätt att redigera några av de vanligaste konfigurationsegenskaperna.
Förhindra att Bridge till Kubernetes vidarebefordrar specifika portar
Konfigurera Bridge till Kubernetes för att ignorera mappning av specifika portar på en Kubernetes-tjänst till datorn genom att lägga till bridgetokubernetes/ignore-ports
-kommentaren på tjänsten.
apiVersion: v1
kind: Service
metadata:
annotations:
bridgetokubernetes/ignore-ports:445,23
Lokal konfiguration med hjälp av (KubernetesLocalProcessConfig.yaml)
Med KubernetesLocalProcessConfig.yaml
-filen kan du replikera miljövariabler och monterade filer som är tillgängliga för dina poddar i klustret. Du kan ange följande åtgärder i en KubernetesLocalProcessConfig.yaml
fil:
- Ladda ned en volym och ange sökvägen till volymen som en miljövariabel.
- Gör en tjänst som körs i klustret tillgänglig för processer som körs på utvecklingsdatorn.
- Skapa en miljövariabel med ett konstant värde.
En standardfil KubernetesLocalProcessConfig.yaml
skapas inte automatiskt, så du måste skapa filen manuellt i roten av projektet.
Ladda ned en volym
Under envanger du ett namn och värde för varje volym som du vill ladda ned. Det namnet är miljövariabeln som ska användas på utvecklingsdatorn. Värdet är namnet på volymen och en sökväg på utvecklingsdatorn. Värdet för antar formen av $(volumeMounts:VOLUME_NAME)/PATH/TO/FILES.
Till exempel:
version: 0.1
env:
- name: ALLOW_LIST_PATH
value: $(volumeMounts:allow-list)/allow-list
Exemplet ovan laddar ner tillåt-listad volymen från containern och anger den platsen och sökvägen för miljövariabeln ALLOW_LIST_PATH. Standardbeteendet är att ladda ned filerna till den sökväg som du anger under en tillfällig katalog på utvecklingsdatorn. I exemplet ovan är ALLOW_LIST_PATH inställt på /TEMPORARY_DIR/allow-list
.
Obs
Om du laddar ned en volym laddas hela innehållet i volymen ned oavsett vilken sökväg du anger. Sökvägen används bara för att ange miljövariabeln för användning på utvecklingsdatorn. Att lägga till /allow-list eller /path/to/files i slutet av token påverkar inte var volymen lagras. Miljövariabeln är bara en bekvämlighet om din app behöver en referens till en specifik fil i volymen.
Du kan också ange en plats där du kan ladda ned volymmonteringen på utvecklingsdatorn i stället för att använda en tillfällig katalog. Under volumeMountsanger du ett namn och localPath- för varje specifik plats. Det namnet är det volymnamn som du vill matcha och localPath- är den absoluta sökvägen på utvecklingsdatorn. Till exempel:
version: 0.1
volumeMounts:
- name: default-token-*
localPath: /var/run/secrets/kubernetes.io/serviceaccount
env:
- name: KUBERNETES_IN_CLUSTER_CONFIG_OVERRIDE
value: $(volumeMounts:default-token-*)
I exemplet ovan används inträdet i env för att ladda ned en volym som matchar default-token-*, till exempel default-token-1111 eller default-token-1234-5678-90abcdef. I de fall där flera volymer matchar används den första matchande volymen. Alla filer laddas ned till /var/run/secrets/kubernetes.io/serviceaccount
på utvecklingsdatorn via inmatningen i volumeMounts. Miljövariabeln KUBERNETES_IN_CLUSTER_CONFIG_OVERRIDE är inställd på /var/run/secrets/kubernetes.io/serviceaccount
.
Gör en tjänst tillgänglig
Under envanger du ett namn och värde för varje tjänst som du vill göra tillgänglig på utvecklingsdatorn. Det namnet är miljövariabeln som ska användas på utvecklingsdatorn. Värdet är namnet på tjänsten från ditt kluster och en sökväg. Värdet för har formen $(services:SERVICE_NAME)/PATH.
Till exempel:
version: 0.1
env:
- name: MYAPP1_SERVICE_HOST
value: $(services:myapp1)/api/v1/
Exemplet ovan gör myapp1--tjänsten tillgänglig för utvecklingsdatorn och miljövariabeln MYAPP1_SERVICE_HOST är inställd på den lokala IP-adressen för tjänsten myapp1 med sökvägen /api/v1
(det vill säga 127.1.1.4/api/v1
). Tjänsten myapp1 är tillgänglig med hjälp av miljövariabeln, myapp1eller myapp1.svc.cluster.local.
Obs
Om du gör en tjänst tillgänglig på utvecklingsdatorn blir hela tjänsten tillgänglig oavsett vilken sökväg du anger. Sökvägen används bara för att ange miljövariabeln för användning på utvecklingsdatorn. Du kan också göra en tjänst från ett specifikt Kubernetes-namnområde tillgängligt med hjälp av $(services:SERVICE_NAME. NAMESPACE_NAME). Till exempel:
version: 0.1
env:
- name: MYAPP2_SERVICE_HOST
value: $(services:myapp2.mynamespace)
Exemplet ovan gör myapp2 från mynamespace namnrymd tillgängligt på utvecklingsdatorn och anger MYAPP2_SERVICE_HOST miljövariabeln till den lokala IP-adressen för myapp2 från mynamespace namnrymd.
Skapa en miljövariabel med ett konstant värde
Under envanger du ett namn och värde för varje miljövariabel som du vill skapa på utvecklingsdatorn. Det namnet är miljövariabeln som ska användas på din utvecklingsdator och värdet är värdet. Till exempel:
version: 0.1
env:
- name: DEBUG_MODE
value: "true"
I exemplet ovan skapas en miljövariabel med namnet DEBUG_MODE med värdet true.
Lägga till ett tjänstberoende
Du kan ange ett tjänstberoende, till exempel en databas eller cache, med hjälp av ett allmänt beroendefält som liknar hur tjänster deklareras. Ange ett beroende här när den tjänst som du felsöker måste ansluta till resurser som inte körs i klustret. Deklarera ett beroende som i följande exempel:
version: 0.1
volumeMounts:
env:
- name: DB_HOST
value: $(externalendpoints:server-bridgetest123.database.windows.net:1433)
Ange värd-DNS-namnet (server-bridgetest13.database.windows.net
i exemplet) och porten (1433 i exemplet) för ditt beroende.
När du anger beroenden, till exempel databaser, fungerar inte modeller för omdirigeringsautentisering. För Azure SQL Database bör du till exempel ange anslutningsprincipen till "Proxy" (i stället för "Omdirigering" eller "Standard").
Exempel på KubernetesLocalProcessConfig.yaml
Här är ett exempel på en fullständig KubernetesLocalProcessConfig.yaml
fil:
version: 0.1
volumeMounts:
- name: default-token-*
localPath: /var/run/secrets/kubernetes.io/serviceaccount
env:
- name: KUBERNETES_IN_CLUSTER_CONFIG_OVERRIDE
value: $(volumeMounts:default-token-*)
- name: ALLOW_LIST_PATH
value: $(volumeMounts:allow-list)/allow-list
- name: MYAPP1_SERVICE_HOST
value: $(services:myapp1)/api/v1/
- name: MYAPP2_SERVICE_HOST
value: $(services:myapp2.mynamespace)
- name: DEBUG_MODE
value: "true"
Nästa steg
För att komma igång med Bridge to Kubernetes och ansluta din lokala utvecklingsdator till klustret kan du läsa Använd Bridge to Kubernetes med Visual Studio Code och Använd Bridge to Kubernetes med Visual Studio.