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

Azure AKS部署Debian+Python-Django容器后8000端口URL路径无法访问问题求助

问题分析与修复方案

嘿,我一眼就瞅到了导致你访问超时的核心问题——你的Kubernetes Service端口映射配置出错了!

你的Django容器明明在8000端口监听服务,但在myops.yaml的Service配置里,你把targetPort设成了8888——这个端口在容器里根本没有服务在跑,外部流量自然没法转发到正确的容器端口,可不就超时嘛!

快速修复步骤

  1. 打开你的myops.yaml,找到Service部分,把targetPort改成8000,和容器的containerPort保持一致:

    ---
    # [START service]
    apiVersion: v1
    kind: Service
    metadata:
      name: myops-python
    spec:
      type: LoadBalancer
      ports:
      - port: 8000
        targetPort: 8000  # 这里改成和容器端口一致的8000
      selector:
        app: myops
    # [END service]
    
  2. 重新应用修正后的配置:

    kubectl apply -f myops.yaml
    
  3. 等个几十秒让Service更新完成,再去访问http://<external-ip>:8000/myops_app,应该就能正常打开了。

额外排查点(如果修复后还是有问题)

  • 检查AKS的安全组规则:确认你的客户端IP被允许访问LoadBalancer的8000端口,AKS默认的安全组可能会限制外部流量,得确保入站规则里开了这个端口。
  • 测试集群内部连通性:先在集群里跑个临时Pod测试服务的内部访问,比如:
    kubectl run -it --rm --image=alpine test-pod -- sh
    
    进去之后用wget <cluster-ip>:8000/myops_app试试,如果能拿到响应,说明服务内部没问题,问题出在外部流量的入口配置。
  • 核对Django的ALLOWED_HOSTS:别忘了把你的外部IP加到Django项目settings.py的ALLOWED_HOSTS列表里,不然Django会直接拒绝请求,比如:
    ALLOWED_HOSTS = ['<你的外部IP>', 'localhost', '127.0.0.1']
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 13:09:09