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

Airflow Web Server Docker启动失败:8080端口已占用问题求助

解决Airflow Docker容器启动时8080端口占用问题

1. 彻底清理Airflow相关Docker资源

  • 执行docker-compose down -v,该命令会停止并删除所有Airflow容器,同时清理关联的卷和网络,彻底重置运行状态。
  • 如果上述命令无效,强制删除所有带Airflow标识的容器:
    docker rm -f $(docker ps -aq | grep airflow)
    
  • 清理未使用的Docker网络(确认无其他依赖容器时执行):
    docker network prune
    

2. 修正docker-compose.yml的端口配置

确保只有airflow-webserver服务配置主机到容器的8080端口映射,其他服务(scheduler、triggerer、worker)不需要对外暴露8080端口,示例正确配置如下:

version: '3.8'
services:
  airflow-webserver:
    image: apache/airflow:2.5.1
    # 其他配置项...
    ports:
      - "8080:8080"  # 仅webserver需要映射主机端口
  airflow-scheduler:
    image: apache/airflow:2.5.1
    # 其他配置项...
    # 不要添加ports映射8080
  airflow-triggerer:
    image: apache/airflow:2.5.1
    # 其他配置项...
    # 不要添加ports映射8080
  airflow-worker:
    image: apache/airflow:2.5.1
    # 其他配置项...
    # 不要添加ports映射8080

3. 重启Docker Daemon解决端口缓存问题

如果清理后仍报错,大概率是Docker端口映射缓存异常,重启Docker服务即可:

  • Mac:点击顶部菜单栏Docker图标 → 选择Restart
  • 重启完成后重新执行docker-compose up airflow-webserver

4. 临时更换Webserver映射端口

如果需要快速启动服务,可以修改webserver的主机映射端口,比如改为8081:
在docker-compose.yml中更新配置:

airflow-webserver:
  ports:
    - "8081:8080"

执行启动命令后,通过http://localhost:8081访问Airflow控制台。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 05:47:43