前提

你必须会创建aspire项目,不会的请先看微服务新体验之Aspire初体验

Aspirate (Aspir8)

Aspirate 是将aspire项目发布到k8s集群的工具

安装aspirate

dotnet tool install -g aspirate

aspirate 初始化

切换到AppHost项目目录

aspirate init

在host项目中生成aspirate.json,如下

{
"TemplatePath": null,
"ContainerSettings": {
"Registry": "registry.cn-hangzhou.aliyuncs.com",
"RepositoryPrefix": "shiningrise",
"Tags": [
"latest"
],
"Builder": "docker"
}
}

生成k8s配置文件

aspirate generate

生成配置文件aspirate-state.json

{
"projectPath": ".",
"outputPath": "aspirate-output",
"containerRegistry": "registry.cn-hangzhou.aliyuncs.com",
"containerImageTags": [
"latest",
"v1.0.0"
],
"containerBuilder": "docker",
"containerRepositoryPrefix": "shiningrise",
"outputFormat": "kustomize",
"skipFinalKustomizeGeneration": false,
"privateRegistryEmail": "aspir8@aka.ms",
"useCustomNamespace": false,
"secrets": {
"salt": "h9xod1BgQWiEbn2R",
"hash": "BPs8EnmB42iO3gy/g8XpYMHSD4qSMTs2fZIm7cJTQ5Y=",
"secrets": {}
},
"processAllComponents": true
}

生成

aspirate build

Apply Manifests

aspirate apply

选择目标集群

修改svc

切换到AspireApp1.AppHost\aspirate-output\webfrontend

修改service.yaml


apiVersion: apps/v1
kind: Deployment
metadata:
name: apiservice
labels:
app: apiservice
spec:
minReadySeconds: 60
replicas: 1
selector:
matchLabels:
app: apiservice
strategy:
type: Recreate
template:
metadata:
labels:
app: apiservice
spec:
containers:
- name: apiservice
image: registry.cn-hangzhou.aliyuncs.com/shiningrise/apiservice:latest #修改成你的镜像文件
imagePullPolicy: Always
ports:
- containerPort: 8080
- containerPort: 8443
envFrom:
- configMapRef:
name: apiservice-env
terminationGracePeriodSeconds: 180
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: webfrontend
labels:
app: webfrontend
spec:
minReadySeconds: 60
replicas: 1
selector:
matchLabels:
app: webfrontend
strategy:
type: Recreate
template:
metadata:
labels:
app: webfrontend
spec:
containers:
- name: webfrontend
image: registry.cn-hangzhou.aliyuncs.com/shiningrise/webfrontend:latest # 修改成你的镜像文件
imagePullPolicy: Always
ports:
- containerPort: 8080
- containerPort: 8443
envFrom:
- configMapRef:
name: webfrontend-env
terminationGracePeriodSeconds: 180

修改配置文件后要重新运行

aspirate apply

增加远程k8s集群到win11本地

打开用户根目录,进入.kube目录(比如我的:C:\Users\shiningrise\.kube)

apiVersion: v1
clusters:
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJVEdIdXJTek55YnN3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBMU1qWXdOek0wTWpGYUZ3MHpOREExTWpRd056TTVNakZhTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUUMzWWkyQmxyWlRWTXVXSkxuSWJJL1dVWEVUTUZab29kNUFqTFJzU01VbHhIOVp1dDR2TXAzK2U2QWsKMzBiZHFIeXlmajI1dzVIRnRibHNHbGQwWXpqLzFwTFNnNC9KRXU1VVNLdkJMVnA4YStiWmRVQXR6SmlkaFpJQQpzZTBud0IvQ3RTUFp5SEJ2emgwTEgxSVVVR2tJOTlEdUY4KytxZGdFTFNCRXFxbVNHWnVtUGp1K2twc2VIK296CkxYbVUxNkpsUzdTUHNsTjdWalJ6MFVObmh6Nk9ud3NERWhPaWk4SlprMFNJNlRtbmxnSGFHTE1PZ1pTV0tFRWkKdFV6Mkx6QU9IWXBoSlFqZmZuc25wci9aRW1QNStmdE0vaFhtOGpsaWQyL1VKZXFkTHhEZ3BCcEhLT05Yck5MVQord0ZiUFc1bUFlbmc1Z2lMNmVVMCswaXkycGdEQWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJRZlJKQVJYaXRqQWZqaTY5THk0N1VuOGVWbG9qQVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQ0lZZmFtQUdmcAplRlZLYk9aNkF0QXFYSVRNY2dBYW9zTFgwekpSeXVwSFpTYkcrbnVYTmRmeW53Nm5iTGg0L1ltMU9KMkNlRUpGCjRNeW9XTHhla0J3UFk2U3BTeHZScGdLUzM2Z1J1WnZTdXI0cDVCQk1BeHRUZmFwUWJ3dDRtdXNOU3VQN0NWUmIKcUJON1FhWXduTDVOSmk4SHVPMnlzUmx4TjFaWmdlaWN0anRoK2ZxUkhab3UrQnZBbjFvd284NE1talcyRGVnLwp3L3crMGRkNWliNS9ZRGtuVzNEaHJSSWZpNzcvenhTYTFnSW1rVmRCdmdrT0F4TWNEQlo5ZWdTbk03K3UxVy9wCm5WNzYxdDhrbmdxOXVpYVpzU2w2VWVDTitEYkdWYUNFL05LUDdVZVB2WmwrVG11aFdPVVVPbXB3U0RUQ3cxVHQKRHlITzFZOURHOVhECi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://kubernetes.docker.internal:6443
name: docker-desktop
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJTFJrdWNpMURrUFF3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBMU1UZ3dNalE1TlRoYUZ3MHpOREExTVRZd01qVTBOVGhhTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUURtL285d0hRZDlXdUh1OWV0TGZWMlJ5bndYdWNQeTkvODdsc3JKTUJtdFBUb3c5RTYyUFdxaDhQT0IKVEp0ZGpHQWpxMWZxNDhkeU80U0U5WmlsRHpxekkzT0JDT2VSUVJHT3JUL2NvTVlZeWpBNXhCRlJueTViTVkxcQpCQ3ZSZW1kNC9PeGtYQncwb1ljbVVqenhzazlWQVk3TXFOdytiOCtqcGphREIzVGdRZXV1Tm14L3RLK2dia2pJCnRoQVEzTWNncG1kekxPUmcydVArNjRRWnd2Q001dXNQdlNiaDhqQ0VJdUtNbEJiQjBQcHJjenA0V3E1KzAwdSsKVm5yV3dxRVF5czF4T2t5clBUSmFWUGNMU3hvdERuZjBkRHVSOUdNeFplTlFpck51a28yRS95VWxERU10MkpvOQpUWkl0L2c1bjR2ZmltOVk0d2VLZzBWcnYzbllKQWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJSQ2txZVlleTZBOSswUzByY0tmbHpOdlJ4NWJ6QVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQ2trUjlXMnI4awpTdVlpWkVab3NFVVM1VnVHT0w4dVVGUzg0czM4Rjd5WmtXcGx3S3ZrZGZNQ3V4QnpwVmVSZTBlVW52UzNTejBmCm1aeXhhdng0djlxMVZBdU4zYm01SUxiV1V3WnlUTUt3M1ZscW1vSlhWcEpTN1V4S3JCeVdlRUU1YjNGUWltVlQKQUpyMUZoUlB2eVpaMXRCQ2xDeDBqUSs0NHRadEV4WU4yeTdBWldxY0VBRHRuc1FLZWE2aHZwanpmQWJjZUFuUgoyREcyWnYrTGVWTnBCMUlsU3kways5Ritia3JxSUtYSWVodHVoYThCZ3craUZOenZBazhrQmZTcjZjZ1Fra0lECkRtS0ROQm96Tk03SHVkYlR3NkdjREY4eUdVRkxDaDIzRHBkdC9tZmdtZUJzUnRuM3hEK254c3c0eWwybThFUXAKdkp5disyWG5OekxHCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://192.168.215.200:6443
name: kubernetes
- cluster:
certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJkekNDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdGMyVnkKZG1WeUxXTmhRREUzTVRVek1UZzBNVEV3SGhjTk1qUXdOVEV3TURVeU1ERXhXaGNOTXpRd05UQTRNRFV5TURFeApXakFqTVNFd0h3WURWUVFEREJock0zTXRjMlZ5ZG1WeUxXTmhRREUzTVRVek1UZzBNVEV3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFUZEVIK0VoeEJ4a1dIQVRqd2R1bXBrcG9ma1owNXdmV2ZlWW5wcHBmclQKTXF4T2hYM2RkL0k2VGFaQmVkR0p3a0xVdTZDSVhiWmpVampCcWU4anFQSWtvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVWcweUZ1bm1HQmoxTHE1UHFUZ2hHCmc1RHBVUGd3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnV3NxTnZYSWVWemJPdDUwR1BLeUFJZkxIVHJSdGtIZG4KRmtlNkpqeXNDYjBDSVFDc2kwRE5ibzYxNHpQaU5mMGExaC9nbW5YQ3Z0TDBuaXdldW1iZ2J3clNIUT09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
server: https://172.31.125.118:6443
name: rancher-desktop
contexts:
- context:
cluster: docker-desktop
user: docker-desktop
name: docker-desktop
- context:
cluster: kubernetes
user: kubernetes-admin
name: kubernetes
- context:
cluster: rancher-desktop
user: rancher-desktop
name: rancher-desktop
current-context: kubernetes
kind: Config
preferences: {}
users:
- name: docker-desktop
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURRakNDQWlxZ0F3SUJBZ0lJRGVyNmhiZnNlMzR3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBMU1qWXdOek0wTWpGYUZ3MHlOVEExTWpZd056TTVNak5hTURZeApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sc3dHUVlEVlFRREV4SmtiMk5yWlhJdFptOXlMV1JsCmMydDBiM0F3Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRQ3dLZnl2VEJXNWdkWWQKZWk0QWVMTTIvOThwV21XOVUxcnZ4N3lFSWR1eHNobjdHYVNrTEFyUmJqTm82YjNxQ3F3YXhadlpYaTQ1YjRxSwptSEhIbmtRaFZWS1dBa2pqck1laVQySGdRRGNaR3RzTHNwNkpBZGdYb2J5elJCQ3Jub1RIMVYrWmxRS3c5dVh0Cm8reTI5SytROW1IQlo0SnNSQkRKN0FCdGl1eUlUSzVVRThTMG1mNDNLZm9qVGdXMXErdnozNHIvdWR2TC9XN0sKTFNXL1RWbWhiSjhNeWtTaDVSZGFVZmxuMjVSYllIUGRCZlR3dmZLT0lscm1DY2RqS2J6N1grbDZIejlsSlc4Mwowc1V5OTUyU2dNL1hGTURwMjRZMVNRbnZ4eEdPYXhHb2k4UGEvSkluZHd0alFkaThMVW5BeHNtV0pQeUx6YzViCk5kMURhQ2xYQWdNQkFBR2pkVEJ6TUE0R0ExVWREd0VCL3dRRUF3SUZvREFUQmdOVkhTVUVEREFLQmdnckJnRUYKQlFjREFqQU1CZ05WSFJNQkFmOEVBakFBTUI4R0ExVWRJd1FZTUJhQUZCOUVrQkZlSzJNQitPTHIwdkxqdFNmeAo1V1dpTUIwR0ExVWRFUVFXTUJTQ0VtUnZZMnRsY2kxbWIzSXRaR1Z6YTNSdmNEQU5CZ2txaGtpRzl3MEJBUXNGCkFBT0NBUUVBbktkdkZMY0I2R2FCdnl6NmJjOUJTam1tbkhRUDBwWW5wSUJabTdHbGtWT01FOS82b3lWSHZHcHoKUUtNeHNFZmJUelRaalNsZ3U4VVo3MmpKWGlUS1RicllNVXFyZmlNL1FvZTMxbTRIVEYweVcvb0xCNXNKelRTYQpVWFhaY3NCOFMvTTZMVEVzTFZVZjdwY0VaZ2ZONkhuMHhqamd5Q3lrRXZkbFBsTTRSM01vZUxFQWxuRFVEWDhMCldITWpla3Q3SjZJZElnd2VHL2FhNEpLb2xxU0lwWjE1TXhZdElsNWlxbGhnSndiekhmVFlxWXg5SXFuZEVnTGMKTXNjd1JDU2dQMitjWWYyVTd3Y1BRMW1remVoTGE0YVlpbjZ5aVRmKzFzWXV1TEhmSGtnczlmWU5JUGVBUy9ZUQpmay9NMWxLWWFUcDcybjdVa3UyazNYV2xLQkdGdGc9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb3dJQkFBS0NBUUVBc0NuOHIwd1Z1WUhXSFhvdUFIaXpOdi9mS1ZwbHZWTmE3OGU4aENIYnNiSVoreG1rCnBDd0swVzR6YU9tOTZncXNHc1diMlY0dU9XK0tpcGh4eDU1RUlWVlNsZ0pJNDZ6SG9rOWg0RUEzR1JyYkM3S2UKaVFIWUY2RzhzMFFRcTU2RXg5VmZtWlVDc1BibDdhUHN0dlN2a1BaaHdXZUNiRVFReWV3QWJZcnNpRXl1VkJQRQp0Sm4rTnluNkkwNEZ0YXZyODkrSy83bmJ5LzF1eWkwbHYwMVpvV3lmRE1wRW9lVVhXbEg1Wjl1VVcyQnozUVgwCjhMM3lqaUphNWduSFl5bTgrMS9wZWg4L1pTVnZOOUxGTXZlZGtvRFAxeFRBNmR1R05Va0o3OGNSam1zUnFJdkQKMnZ5U0ozY0xZMEhZdkMxSndNYkpsaVQ4aTgzT1d6WGRRMmdwVndJREFRQUJBb0lCQVFDTXQ1MU9jWnBRNm5PYwpiRUpld2d0MS9ZSEhTSnhJVlZNb2dnWUdEZjJ0dmJTZkxXYWtkVUhXOVE0LzJhYUlVeW9TNEpLVFdYWFhEMUE5ClVYUmhuZnlTRzlPeVcvVFpXT1RHdEY1Y2dTOEI4TC9VWWtQYzhRb3FKbG5UWUtWb1VXR0ROdC84a0Zqci91eS8Kbk5lemRWVGdtTTZSYlJ0elhCT0ZGKzFua3pkSno1T1FJRWRJeW9HU2dPQUFNa2RKT0lCd1hydVVINXh0NDBNSwpReFNDdTRDdyt5dVRPRDUxcXNYWWVNZ1YvdkowWUdsNFR4YlNRZXc4WE12S0EybGt2VHYwUUluaytTZWpRYVU4ClFHeGtIdGRqejlIeTY5bE92K0lCMTJBbDVRV0ZaREE1citueHVBek1SYnNWUzRHYzBWaGh6Z080M0lEbHk1OUcKaFE1ajloQmhBb0dCQU5acGQwWHIzY05CNU5wZGhIL1NLb3dtZVVXU2Z2VTNnMWovMy9odS90eG1VakVZN3FFMApxYS9id1o4bk5IclZZRE5tendoN2hKeU0xbE1pbS9icDdOOVhoM2ZWYm9TcEV5V2FpZUt6MmNNRFZSWDFIanhmCnBmVm9OUm5YV29zYzJpVjhXVzJraEF1RisvVDZETjBUSzd5OEtvT2VQb0pjZjFPT2VtMXc1UGN2QW9HQkFOSlYKVmNITnIyV1E1dkpuL2hYQ2ZPK0ZHMzIzMFp6Z3Z0RVRkU3k4MGJseUtzb05UcWdWSW5lQ0szUzczcmZjUk55TgpYeUtFVnpqalBLeXFYYXVBMHdBS09UZ3lNbDFab0U0a3ArWEFNRm5KenNacTIvR0haWDdML3NyNURYNGIxODFzCmhXbWpaM0pweklDS3dxZ0piUFBYdklMMnhrTVhQQkZnZmQvL1p1WlpBb0dBTFM1WU5lRzMvMWM1VkZKMGcwTFUKT0dnN0VkQUc5TUZYNmo4eEFQYlN1YnJPQXc2UDZtUmdoWEEzWXNRdUtOd2h3M01jbVZyOTNNZEl1b2dHZVlkZApwTXFhLzBONFlIZ0lVdG8zeUEvQ0NYZ0FTL28wL3QvZzVzK29zT05TYnhJTFhlN1FJV3lUYnFJekw3SXBWOFNjCmFNNzEzbnBRRGNSVUNGVnpzdkFoTDMwQ2dZQTRWemx3ZjNzek5weFdaSHJRTTFlcUJUcTI4MDFIdTRBQm16ZXcKOHljdWlLRmpuQ3JzcFRTbFZJMzFaL21od0hRRnJDekduektKLzN5YU44eDlpelY1OWtNYmhYNnVPTHJURThpUgpwMmlNTkoyWjByZjF1N0g1UkFXTk15ZGxGMm80RVpDdkdtRTBhWmlvK2dKb1pwWHp2MTgwcVl1MEh2NHRIVzY2CldMeWtpUUtCZ0RXYWF6T1JzU0Y3WklFM3lIWVVONnRteUR2MlNhYWtBcFJMQWVSRXJUNkMzUE1uWnk2Yk0vWmIKaDJkdGdCVDNMMFlhTktaZS8rZzU4S1hNSW1LeUhKNDFOSDJLTmRPNDJNOUlvcTlRWXlEWGYwZU81YTljTG5VZgpoakFqekhRSFpESnByRm0vb3dlbG5BeTBrNml4OHpVUVIzNkdZRVRvTzdMaWlNbm4xVWxVCi0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg==
- name: kubernetes-admin
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURJVENDQWdtZ0F3SUJBZ0lJTGptaFNQQml6bDR3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBMU1UZ3dNalE1TlRoYUZ3MHlOVEExTVRnd01qVTBOVGxhTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQThENE1UZkEyQ2hRN05WYVEKbUJ4WW13aEMxTDRHeEY5dWJYT2ZIaE12RjBqbk53MDVqVXJCL2Rpb0x4QXJTVUNweWt6VWFKaVlRelBtdW9iMQp0ekZNbVRMTzJhL3V1Q3F5MjU0M0ZlZ2V5NU9QZ1RORUZiOHhNZEg4Yzl5QjUweXdkTDVzRW4xZGZlL3hBd1dUCk16eERkMVpaVllaNjFCQmZmQXAwejJhY3FabHk4OUV3Sy9IQkNDUHQvNjA3b0c5WTdzSmdQeWcxMDNSUHlOK3IKNTRxT01PVkFlK2VQTlp6S2VkSlZmaSs1RC82eDlMYVVQWDY3RTRJRUNSSTlzOGpCRjh1TkJralJNbXRzNnI5OQpKSGtzZEdlMk53SGZEY0VQb1VIQUQrbFY2WWxUblBvcnZZUDlOU3FoczhLTGtRVDZqVFVXY0t4SmhhaXVmQzcxCnJ5a1dVUUlEQVFBQm8xWXdWREFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0RBWURWUjBUQVFIL0JBSXdBREFmQmdOVkhTTUVHREFXZ0JSQ2txZVlleTZBOSswUzByY0tmbHpOdlJ4NQpiekFOQmdrcWhraUc5dzBCQVFzRkFBT0NBUUVBajE0cXhlZCtpZDZBNzJrcGRDSlNjTm1XV2hQVDdtRXFlNFBNCk40NE0ybnJjbkpJV0VTY0IyQS9XdkV0SFNva0FTMEVYbjR3bWVCRzFMT0N2SGE4ZDdhS3pZNW4vbEc1ZnZPVGcKNXFDRi9lVE1YR0FTRzBpaVZlMnR3YlNMQXhMdTFZK1lEQXNGV1psUXE3MjJIemJmZXE2aEJVL2ZWVXFLK0t3Uwo3K1VUYmNRYVkxMGRFWk1kdTM5aDN1Y3VKZDlaM01NYWxZc05id1B1TFEzNFBFOFRabjZ3UDdlK0pWa0lPRGpPCk9mdTBuaFBGVHp3WlZoNm5TSUZOMkQ1VHZNOVlFTm9xQzFuSHBsbWZ2NmF4Tmg3Rm05bjdzd1FaRm1vUmxNRlkKL2dKb0dPUGJ6cXNLUUs3c083VUdzVDNlSFlQVUVlK0svSWtpeXdmeTlPWWJablNWZ1E9PQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBOEQ0TVRmQTJDaFE3TlZhUW1CeFltd2hDMUw0R3hGOXViWE9mSGhNdkYwam5OdzA1CmpVckIvZGlvTHhBclNVQ3B5a3pVYUppWVF6UG11b2IxdHpGTW1UTE8yYS91dUNxeTI1NDNGZWdleTVPUGdUTkUKRmI4eE1kSDhjOXlCNTB5d2RMNXNFbjFkZmUveEF3V1RNenhEZDFaWlZZWjYxQkJmZkFwMHoyYWNxWmx5ODlFdwpLL0hCQ0NQdC82MDdvRzlZN3NKZ1B5ZzEwM1JQeU4rcjU0cU9NT1ZBZStlUE5aektlZEpWZmkrNUQvNng5TGFVClBYNjdFNElFQ1JJOXM4akJGOHVOQmtqUk1tdHM2cjk5Skhrc2RHZTJOd0hmRGNFUG9VSEFEK2xWNllsVG5Qb3IKdllQOU5TcWhzOEtMa1FUNmpUVVdjS3hKaGFpdWZDNzFyeWtXVVFJREFRQUJBb0lCQVFDR1AwWUU3MnhqS1hjRQprVUR2bnpkc09xdU4wanBaMWJJUmU0QzQvNk5hOGFReXdUTWQzMTZVQ1ZQQ0tOam5jRGp4RVFuSkFTeGtzVVlICmlZOFpOWFZHVG53RWJTbUt4R0Y2RStsWVZvT080d0JZQkZ2Umd5dHNXWmttN1Z1eDhzclFFZkMyVEZQSUlpS2QKdTZuTUFhcjVyc2p3MzlzWFVhYnAyN1gyaDdLWG1sRFNQOWJzajlkQzhCendiRzBhMHltdlJsSkJYQzVrY2JnbwpMMmh2UG9wUkZOMjJwVHlHOHR4ZzV0azZsdWhYak1lQnRJV0ZuR2pUc29oY2FSUWxzbVpNVlE0RVBqS1FQTnBqCi9PYlZZNjNjZzdiZUVkdmxQNm8vWldXZTl4dGt1Y0Z6YVZSK2k2QWFUenZFTUFNcWR6Y05JK0pKd2IrZll1RmMKd3BTQW9XalpBb0dCQVBxZG0zMDVXZVFLL0xqRmh0RWhtb09uVTF1NytBNjdLbjBRaE8rZVE2czU2UVBSTlFkOQovU0FuMEZaV2JmWGtYT3RTY0R5MWp2Zi9wNDFCSjBSQU5qMDZGVmFtREowYWJSNTIyM08rWGx3cjlGbWNqV0Z4CklDMTVFQUJTeFhEemVSbC9XMkJFWXpYeEErRjlNVTA4WDA1RGovcWN4OWpFT0ZhR05ybEk0ajVqQW9HQkFQVm4KWXl1QUI4Qnk2cXdvTE9Sd3B6SllaR1ZHWG9BWGFDU2JCcXBZTC8xRDIxSW9rcHFsVThodnRVaXJhWENqclJReAorMXJpcSt5OU84K2JoT2xoMnVFS3hxYTNLbHZJSTgvcitjVmFWK29UYy9CelRka3RiZVpDaVZFWDRqWHdPYlRZCkJPSGUvWWRSc0hXNmE2ci93UDZlQ2lvNjlTTkF1ck9YdG1EUGlheTdBb0dBUFNHSXRnanhSbER2eUZwV1Fsa0MKQ2E4ZEJEbGJqcXhVOXVDNnJJQmNYVDNvK3Nkak9ncWZYZUtZVFJjVUIzREd3WmdBVEs2MHl3V1BaME5IUXJ5dQova3hXdkNZUTJabUNtSFhCbmdBSG9GQVFjSE5oZ1MxSS9nNlR1cUIyRE5FMjd1TkQ5TDE1dmNTbWY3QThBRzBECmltR3NreUwvRkg3NGh4S0I4cncyZzZVQ2dZQkNIOUNWK1JLZHBabGNPQnNZbHM1R2Y1RFZ4U2RUaG5zV1dmdHEKelFacFRPNTg3ZGZLK2I5Z285RUtPcjNYanhMay9TN0laNG1CNmQrQzZsbmU5UElnYjJIbHJEY3FzZndNVzM1YQowaVFjTzQraSs3Ni9SVUYycVBrTk04MU5VV1NMT1NYZm90Rlh0QWhEUUs4Z1RYZTRZK2REUjgyajZSNGxwRHlOClMzN0NYd0tCZ1FEeVF3b282YnpGSHBMUHlVa1B1NmNNSzdkQnVGK2lkNVRGWXU2QUxZaG44aXhDcCt3ZiszZFgKeXp0bUd5OFdZREtZWEp5bXlGVjBqUDFOaWUxQmxSeGlKTFU3M0RjdVZNV2hnU1NudzVaTGV6bTJLTDA2a0llSQorVkptMDNvdDJzRklCdlErZlBsZjVrd1dKU2wxTm9RK3lwTjgxSlhpbEluWCtDTjVMQ3RwNXc9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=
- name: rancher-desktop
user:
client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJrVENDQVRlZ0F3SUJBZ0lJT2xSMG9ES2pBYVF3Q2dZSUtvWkl6ajBFQXdJd0l6RWhNQjhHQTFVRUF3d1kKYXpOekxXTnNhV1Z1ZEMxallVQXhOekUxTXpFNE5ERXhNQjRYRFRJME1EVXhNREExTWpBeE1Wb1hEVEkxTURVeApNREExTWpBeE1Wb3dNREVYTUJVR0ExVUVDaE1PYzNsemRHVnRPbTFoYzNSbGNuTXhGVEFUQmdOVkJBTVRESE41CmMzUmxiVHBoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJEUWhQUVlpSG5xVmpHdVoKc25lQkx6TG5qTHQzYThhVjJXOWhBNnBqV0ppb28ycjhBb1hEaG56ZjlFSG0yWTJnaVIvaU1Takluc01tZ3NwYgpTR1BiRGhpalNEQkdNQTRHQTFVZER3RUIvd1FFQXdJRm9EQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0RBakFmCkJnTlZIU01FR0RBV2dCUmdSeGtUaVV0a1N4QmpaVHpjdy9pTkpUeDQ4akFLQmdncWhrak9QUVFEQWdOSUFEQkYKQWlCTGQxb013em5SZktkNk1TOC84ZEx2MVcrK3M5SnlQYVltSlVXVjY2RlFOd0loQUlMMEg3Ujk0eW5rL1NaTgpxYjc3cVc2aTIvZmJBNlFpbnoza0dWVzlEVVBOCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0KLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJkekNDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdFkyeHAKWlc1MExXTmhRREUzTVRVek1UZzBNVEV3SGhjTk1qUXdOVEV3TURVeU1ERXhXaGNOTXpRd05UQTRNRFV5TURFeApXakFqTVNFd0h3WURWUVFEREJock0zTXRZMnhwWlc1MExXTmhRREUzTVRVek1UZzBNVEV3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFUajdKWVZjcWNNQ2Y2clFkOFEyTTZ3d2Zpam5KSTV2VXhGT09CbkZsdnYKQVF2dXl5U21KVGVDRGZBZ0c3Tk0rY3IxZFI1RWZsd25JWEVqa0RTWmcvVFVvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVVlFY1pFNGxMWkVzUVkyVTgzTVA0CmpTVThlUEl3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUloQU1NczdWVVhDMDF6T3JkbTN5SXdkQnFsRlpMNDJhSkkKMnhQa2k0MGtSR0p6QWlCK2FoazVhR3dMR0h3UGdMSWxiU1h2SmUwNFZBS3pNSFljYjBVdnNnQzdoQT09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
client-key-data: LS0tLS1CRUdJTiBFQyBQUklWQVRFIEtFWS0tLS0tCk1IY0NBUUVFSUlYeHBveFZWcml2VFpCb1J6b0pHTlg2VURad1d1bElKZmc5V2NLQkI3ZGtvQW9HQ0NxR1NNNDkKQXdFSG9VUURRZ0FFTkNFOUJpSWVlcFdNYTVteWQ0RXZNdWVNdTNkcnhwWFpiMkVEcW1OWW1LaWphdndDaGNPRwpmTi8wUWViWmphQ0pIK0l4S01pZXd5YUN5bHRJWTlzT0dBPT0KLS0tLS1FTkQgRUMgUFJJVkFURSBLRVktLS0tLQo=

这三处来自k8s集群的主机的kube配置文件中

这样添加后就可以选择远程k8s集群了

切换k8s集群命令

kubectl config get-contexts
kubectl config use-context <context-name>
kubectl config current-context

常用命令

docker run -d -p 5000:5000 --privileged=true --restart always -v E:/docker/registry:/var/lib/registry --name registry registry:2

dotnet tool install -g aspirate

aspirate init
aspirate generate
aspirate build
aspirate apply aspirate destroy
dotnet tool uninstall -g aspirate

相关文章

作者

吴晓阳 微信号:shiningrise

Aspire项目发布到远程k8s集群的更多相关文章

  1. 2.使用jenkins自动构建并发布应用到k8s集群

    作者 微信:tangy8080 电子邮箱:914661180@qq.com 更新时间:2019-06-21 14:39:01 星期五 欢迎您订阅和分享我的订阅号,订阅号内会不定期分享一些我自己学习过程 ...

  2. 利用容器逃逸实现远程登录k8s集群节点

    某天, 某鱼说要吃瞄, 于是...... 李国宝:边缘计算k8s集群SuperEdge初体验 ​ zhuanlan.zhihu.com 图标 照着上一篇文章来说,我这边边缘计算集群有一堆节点. 每个节 ...

  3. Kubernetes 远程工具连接k8s集群

    Kubernetes 远程工具连接k8s集群 1.将Master的kubectl文件复制到Node内 scp k8s/kubernetes/server/bin/kubectl root@192.16 ...

  4. 5 秒创建 k8s 集群 - 每天5分钟玩转 Docker 容器技术(115)

    据说 Google 的数据中心里运行着超过 20 亿个容器,而且 Google 十年前就开始使用容器技术. 最初,Google 开发了一个叫 Borg 的系统(现在命令为 Omega)来调度如此庞大数 ...

  5. Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之部署master/node节点组件(四)

    0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 ...

  6. 5 秒创建 k8s 集群[转]

    据说 Google 的数据中心里运行着超过 20 亿个容器,而且 Google 十年前就开始使用容器技术. 最初,Google 开发了一个叫 Borg 的系统(现在命令为 Omega)来调度如此庞大数 ...

  7. K8s 集群节点在线率达到 99.9% 以上,扩容效率提升 50%,我们做了这 3 个深度改造

    点击下载<不一样的 双11 技术:阿里巴巴经济体云原生实践> 本文节选自<不一样的 双11 技术:阿里巴巴经济体云原生实践>一书,点击上方图片即可下载! 作者 | 张振(守辰) ...

  8. kubernetes生态--交付prometheus监控及grafana炫酷dashboard到k8s集群

    由于docker容器的特殊性,传统的zabbix无法对k8s集群内的docker状态进行监控,所以需要使用prometheus来进行监控: 什么是Prometheus? Prometheus是由Sou ...

  9. 从零开始搭建高可用的k8s集群

    一.环境准备 使用Hyper-V虚拟机功能搭建三台Centos虚拟机系统,配置好静态IP,分别为k8s-node1(192.168.0.8),k8s-node2(192.168.0.9),k8s-no ...

  10. 1.还不会部署高可用的kubernetes集群?看我手把手教你使用二进制部署v1.23.6的K8S集群实践(上)

    公众号关注「WeiyiGeek」 设为「特别关注」,每天带你玩转网络安全运维.应用开发.物联网IOT学习! 本章目录: 0x00 前言简述 0x01 环境准备 主机规划 软件版本 网络规划 0x02 ...

随机推荐

  1. 重学c#系列——DiagnosticListener [三十五]

    前言 简单介绍一下DiagnosticListener,一个比较常见的事件通知模型,可以说是事件发布订阅模型,常用于监控. 正文 直接编写代码: using System.Diagnostics; p ...

  2. docker 应用篇————容器共享数据卷[十五]

    前言 简单介绍一下多个容器间容器卷共享. 正文 先启动上一节的test:2.0 这个镜像. docker run --name test01 -it test:2.0 /bin/bash 然后 ctr ...

  3. python抽帧及生成高质量的GIF图

    python抽帧及生成高质量的GIF图 对视频进行抽帧只需要两个模块即可: opencv-python (cv2) opencv-contrib-python 我们都知道视频有分辨率,即视频的宽度与高 ...

  4. navicat连接mysql8报错

    mysql8采用更安全的加密方式,navicat不支持,网上大多办法都是采用的更改数据库加密方式为外部加密 个人觉得这样它不太合适 so,终于找到一个办法: 把mysql8安装后的lib文件夹里的 l ...

  5. FasterViT:英伟达提出分层注意力,构造高吞吐CNN-ViT混合网络 | ICLR 2024

    论文设计了新的CNN-ViT混合神经网络FasterViT,重点关注计算机视觉应用的图像吞吐能力.FasterViT结合CNN的局部特征学习的特性和ViT的全局建模特性,引入分层注意力(HAT)方法在 ...

  6. 力扣168(java)-Excel表列名称(简单)

    题目: 给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称. 例如: A -> 1B -> 2C -> 3...Z -> 26AA -> ...

  7. Flink+Hologres亿级用户实时UV精确去重最佳实践

    简介: Flink+Hologres亿级用户实时UV精确去重最佳实践 UV.PV计算,因为业务需求不同,通常会分为两种场景: 离线计算场景:以T+1为主,计算历史数据 实时计算场景:实时计算日常新增的 ...

  8. 全网最详细SpringCloud-高级篇

    SpringCloud-高级篇 高级篇包含微服务保护(流量控制,系统保护,熔断降级,服务授权).分布式事务.多级缓存.Redis集群.可靠消息服务 学习安排 技术分类 1.微服务保护 ①初识Senti ...

  9. 探索 DTD 在 XML 中的作用及解析:深入理解文档类型定义

    DTD 是文档类型定义(Document Type Definition)的缩写.DTD 定义了 XML 文档的结构以及合法的元素和属性. 为什么使用 DTD 通过使用 DTD,独立的团体可以就数据交 ...

  10. C++编程英语词汇

    abstract抽象的 abstraction抽象性.抽象件 access访问 access level访问级别 access function访问函数 adapter适配器 address地址 ad ...