You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Minikube集群中Angular连接Spring Boot报错ERR_NAME_NOT_RESOLVED

问题原因
  • 核心问题:Angular是前端单页应用,代码最终运行在访问者的本地浏览器中,不在minikube集群内部网络里,浏览器无法识别K8s集群内部的Service域名issuerwebservices,直接访问该域名必然触发DNS解析失败,抛出ERR_NAME_NOT_RESOLVED错误。K8s集群内部域名仅能被集群内运行的Pod解析调用。
  • 配置问题:你提供的Deployment、Service YAML都存在严重的缩进错误,直接执行apply无法正常创建资源,即使解决DNS问题服务也无法正常运行。
修复步骤

1. 修正YAML配置缩进

YAML对缩进层级要求严格,修正后的Deployment配置如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: issuerwebservices
spec:
  selector:
    matchLabels:
      app: issuerwebservices
  replicas: 1
  template:
    metadata:
      labels:
        app: issuerwebservices
    spec:
      containers:
      - name: issuerwebservices
        image: jadeite1000/issuerwebservices:latest
        ports:
        - containerPort: 30001

修正后的Service配置如下:

apiVersion: v1
kind: Service
metadata:
  name: issuerwebservices
spec:
  selector:
    app: issuerwebservices
  ports:
    - name: http
      port: 30001
      targetPort: 30001
      nodePort: 30001
      protocol: TCP
  type: NodePort

执行以下命令重新应用配置,验证资源状态正常:

kubectl apply -f workloads.yaml
kubectl apply -f services.yaml
# 检查Pod是否正常Running
kubectl get pods
# 检查Service是否正常创建
kubectl get svc issuerwebservices

2. 修改前端访问地址

本地minikube测试场景下,直接用NodePort对外暴露的地址访问即可:

  1. 执行命令获取minikube节点IP:
minikube ip
  1. 修改Angular项目的environment.prod.ts配置,把baseUrl替换为http://<上一步获取的minikube IP>:30001/,示例:
export const environment = {
  production: false,
  baseUrl: 'http://192.168.49.2:30001/'
};
  1. 重新打包Angular应用、更新集群中的Angular部署后即可正常访问后端接口。

可选优化:Ingress统一入口

如果需要模拟生产环境、不想写死节点IP,可以启用minikube的Ingress插件,配置路由规则将API路径转发到后端服务,前端直接使用相对路径访问,避免跨域和DNS问题:

  1. 启用Ingress插件:
minikube addons enable ingress
  1. 创建Ingress资源,将匹配/api前缀的请求转发到issuerwebservices服务的30001端口
  2. 将Angular配置中的baseUrl改为相对路径/api/即可
注意事项
  • 集群内部Service域名仅适用于集群内Pod之间的互相调用,外部访问(包括浏览器访问、集群外服务器调用)都不能直接使用该域名。
  • 跨域访问需要确保Spring Boot服务配置了正确的CORS规则,允许前端来源的请求,否则会出现跨域拦截错误。

内容的提问来源于stack exchange,提问作者jadeite1000

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.03 09:51:24