Windows通过Docker安装Airflow报错:变量名"-e \"AIRFLOW_UID"无效求助
问题根因
报错的核心原因是echo -e属于Linux/Unix系Shell专属语法,Windows自带的CMD、PowerShell均不支持该参数。执行原命令时,Windows会把-e也作为文本内容写入.env文件,Docker读取环境变量时识别到-e "AIRFLOW_UID这类无效变量名,就会触发你看到的报错。
修复方案
方案1:PowerShell 环境执行(推荐 Windows 10/11 用户使用)
直接运行以下命令生成正确的.env文件:
"AIRFLOW_UID=50000`nAIRFLOW_GID=0" | Out-File .env -Encoding utf8
注:Airflow官方默认容器内使用的UID为50000,Windows环境无需调用
id -u获取本地用户ID,直接填50000即可正常实现卷持久化。
方案2:CMD 环境执行
如果使用传统CMD命令行,依次运行以下两条命令:
echo AIRFLOW_UID=50000 > .env echo AIRFLOW_GID=0 >> .env
方案3:手动创建文件
如果你对命令行操作不熟悉,可直接在docker-compose.yml所在的文件夹,手动新建名为.env的文本文件,写入以下两行内容后保存即可:
AIRFLOW_UID=50000 AIRFLOW_GID=0
操作验证
生成.env文件后先打开检查内容,确认没有-e相关的冗余字符后,再重新执行docker-compose up airflow-init即可正常运行。
内容的提问来源于stack exchange,提问作者Raghu Aditya Pulavarthi
相关产品推荐
相关产品推荐

