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

Docker中运行Airflow时无法定位AWS凭证问题求助

问题排查与解决
  • 未指定AWS配置文件:boto3默认仅读取[default]配置段,你的凭证存储在[some_profile]中,需显式指定配置文件:

    sts_client = boto3.client('sts', profile_name='some_profile')
    

    也可在Airflow容器环境中设置环境变量AWS_PROFILE=some_profile,让boto3自动加载该配置。

  • 环境变量覆盖:检查容器内是否存在AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY这类环境变量,若为空或无效,会覆盖配置文件中的凭证。可在容器内执行echo $AWS_ACCESS_KEY_ID验证。

  • 文件权限与归属:确认容器内/usr/local/airflow/.aws目录及文件的所有者为Airflow运行用户(通常是airflow用户)。执行docker exec <你的worker容器名> ls -l /usr/local/airflow/.aws查看,若权限不符,需调整本地文件权限或在容器内修改归属。

  • boto3加载顺序冲突:boto3优先读取环境变量,其次是IAM角色(云容器服务场景),最后才是本地配置文件。若Airflow部署在ECS/EKS等云容器服务中,需确认是否存在自动挂载的IAM角色干扰凭证加载。

  • 配置文件格式错误:检查容器内credentials文件格式,确保[some_profile]下的aws_access_key_id和aws_secret_access_key键名无拼写错误,且无多余空格或语法问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 05:56:05