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

Docker Desktop部署正常,AKS中Angular应用仅显示NGINX默认页

Angular应用在AKS中显示NGINX默认页而非构建文件的排查方案

核心排查方向

你的Deployment配置本身没有明显问题,Docker Desktop运行正常但AKS异常,大概率是镜像一致性、拉取逻辑或权限层面的问题,按以下步骤逐一验证:


1. 确认AKS Pod使用的镜像版本

执行命令查看Pod实际拉取的镜像:

kubectl get pods -o jsonpath='{.items[*].spec.containers[*].image}'

检查输出的镜像namespace/k8sbeginner-frontend:v1是否和你本地测试的完全一致。如果存在镜像缓存问题,可在Deployment的容器配置中强制拉取:

containers:
- name: k8sbeginner-frontend
  image: namespace/k8sbeginner-frontend:v1
  imagePullPolicy: Always  # 添加这一行强制每次拉取最新镜像
  ports:
   - containerPort: 80

更新Deployment后,删除旧Pod触发重新拉取:

kubectl delete pod <你的Pod名称>

2. 直接检查AKS Pod内的文件内容

进入AKS的Pod内部:

kubectl exec -it <你的Pod名称> -- /bin/bash

查看NGINX默认静态文件目录(通常为/usr/share/nginx/html):

ls -la /usr/share/nginx/html

如果目录下只有NGINX默认的index.html,说明拉取到AKS的镜像本身就没有包含Angular构建文件,问题出在镜像推送环节。

3. 重新验证镜像构建与推送流程

  • 本地重新构建镜像,确保构建过程正确打包了Angular产物:
    docker build -t namespace/k8sbeginner-frontend:v1 .
    
  • 本地运行镜像再次验证:
    docker run -p 8080:80 namespace/k8sbeginner-frontend:v1
    
    访问localhost:8080确认显示的是你的Angular应用。
  • 重新推送到Docker Hub:
    docker push namespace/k8sbeginner-frontend:v1
    
  • 回到AKS删除旧Pod,让集群拉取最新推送的镜像。

4. 检查私有镜像的拉取权限

如果你的Docker Hub镜像是私有仓库,AKS集群需要对应的拉取凭证:

  • 创建镜像拉取密钥:
    kubectl create secret docker-registry regcred --docker-server=docker.io --docker-username=<你的Docker Hub用户名> --docker-password=<你的Docker Hub密码> --docker-email=<你的邮箱>
    
  • 在Deployment的Pod模板中关联密钥:
    spec:
      template:
        spec:
          imagePullSecrets:
          - name: regcred  # 添加这部分配置
          containers:
          - name: k8sbeginner-frontend
            image: namespace/k8sbeginner-frontend:v1
            ports:
             - containerPort: 80
    

5. 验证NGINX配置正确性(若自定义过配置)

如果你的Docker镜像中修改了NGINX配置,确认配置文件中静态文件根目录指向正确:

cat /etc/nginx/conf.d/default.conf

检查root字段是否为/usr/share/nginx/html(Angular构建文件默认存放目录),避免配置错误导致加载默认页。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 20:22:45