这个需求主要是针对开发环境的。
当我更新一个通过Minikube创建和公开部署的坞映像时,我必须删除并重新创建这个部署和服务。但是,我想维护分配给该特定服务的相同的nodeport。我知道如果留给Minikube,就会分配一个随机端口。但是我可以指定NodePort吗?
我使用以下Yaml文件创建部署,并通过expose命令公开服务。
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: dpl_name
spec:
template:
metadata:
labels:
app: app_name
spec:
containers:
- name: ctr_name
image: 192.168.42.22:80/imagename:latest
ports:
- containerPort: 8090
volumeMounts:
- mountPath: /var/containerdata
name: vlm
volumes:
- name: vlm
hostPath:
path: '/data/vlm'发布于 2017-03-20 17:33:36
您可以通过创建一个服务类型的NodePort并在该.yaml配置中指定nodePort值来公开部署:
kind: Service
apiVersion: v1
metadata:
name: app_name
labels:
app: app_name
spec:
type: NodePort
ports:
- port: 80
targetPort: 8090
nodePort: 30000 # <--
selector:
app: app_name这将指定始终使用nodePort值:30000
https://stackoverflow.com/questions/42896718
复制相似问题