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

如何通过Shell脚本动态生成完整的nginx upstream配置文件

可用脚本方案

直接把你原来的脚本调整成下面的写法即可,逻辑就是先写块开头,再追加所有server条目,最后写闭合括号:

#!/bin/sh

# 新建/覆盖文件,写入upstream块开头
echo "upstream WebPool {" > upstream.nginx.conf

# 匹配所有STABLES开头的环境变量,逐行写入server配置,保持缩进格式
printenv | grep "^STABLES" | while read -r line; do
   echo "   server ${line#*=};" >> upstream.nginx.conf
done

# 写入块闭合标记
echo "}" >> upstream.nginx.conf
关键说明
  • 第一次写入用单箭头>,作用是创建新文件(如果文件已存在就清空原有内容)写入头部;后续追加server条目和闭合括号都用双箭头>>,表示在文件末尾追加内容,不会覆盖之前写入的内容
  • read后加-r是shell通用写法,避免读取到带反斜杠的内容时出现异常转义,在alpine自带的busybox shell环境下也能正常运行
  • 脚本生成的配置格式和你给出的示例完全一致,不需要额外调整,nginx可以直接通过include加载

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 06:57:20