前提

你必须会创建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. 重新点亮shell————awk表达式[十二]

    前言 简单介绍一下awk命令. 正文 介绍: 字段: 实例: 例子: 分割例子: 显示行号例子: awk 表达式: 赋值操作符 这个$1 解释一下,在我们的脚本中,这个$1 是第一个参数,这里是第一个 ...

  2. Signalr断线重连机制

    前言 Signalr 即时消息发布到服务器后发现链接老是自动断开,导致无法发送广播后面百度搜了一下,signalr有个超时的机制 解决办法(js) //链接到自己的hub var connection ...

  3. 《c#高级编程》第5章C#5.0中的更改(十)——异步编程

    C#异步编程是一种在单线程上实现并发执行的技术,它通过使用异步方法.任务等高级概念,使得应用程序能够更好地响应用户操作.处理大量数据和操作外部资源.C#异步编程的核心概念包括: 异步方法:使用 asy ...

  4. python格式化时间报错:UnicodeEncodeError: 'locale' codec can't encode character '\u5e74' in position 2: Illegal byte sequence

    执行下列代码: from datetime import datetime t = datetime.now() print(t) print(t.strftime("%Y年%m月%d日,% ...

  5. 力扣682(java)-棒球比赛(简单)

    题目: 你现在是一场采用特殊赛制棒球比赛的记录员.这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分. 比赛开始时,记录是空白的.你会得到一个记录操作的字符串列表 ops,其中 ops ...

  6. K8s场景下Logtail组件可观测方案升级-Logtail事件监控发布

    简介: SLS针对Logtail本身以及Logtail的管控组件alibaba-log-controller,采用K8s事件的方式,将处理流程中的关键事件透出,从而让用户能够更清楚的感知其中发生的异常 ...

  7. 谈AK管理之基础篇 - 如何进行访问密钥的全生命周期管理?

    简介: 我们也常有听说例如AK被外部攻击者恶意获取,或者员工无心从github泄露的案例,最终导致安全事故或生产事故的发生.AK的应用场景极为广泛,因此做好AK的管理和治理就尤为重要了.本文将通过两种 ...

  8. 分布式系统一致性测试框架Jepsen在女娲的实践应用

    ​简介: 女娲团队在过去大半年时间里持续投入女娲2.0研发,将一致性引擎和业务状态机解耦,一致性引擎可支持Paxos.Raft.EPaxos等多种一致性协议,根据业务需求支撑不同的业务状态机.其中的一 ...

  9. WPF 列表控件数据源绑定多个数据集合方法

    在 WPF 用的多的列表控件如 ListBox 或 ListView 等,本文告诉大家在这些列表控件上进行绑定多个数据集合来源的多个实现方法.如有一个显示动物列表的控件,需要绑定的数据来源是阿猫和阿狗 ...

  10. Istio微服务入门---通过istio部署微服务实现灰度发布(15)

    一.Istio简介 1.1 Istio介绍 官方文档:https://istio.io/docs/concepts/what-is-istio/ 中文官方文档:https://istio.io/zh/ ...