# 不重新打包修改nginx-web镜像写死的API地址

由于各种原因前端的API地址被写死了，而临时需要修改地址，打包发布麻烦,不知道哪个版本的代码对应这个版本，可以这样做。

#### nginx.conf中写死的服务发现

- 方法一，使用主机别名，类似hosts功能

[![](https://iovhm.com/book/uploads/images/gallery/2024-12/scaled-1680-/TuqseE0Eyb0mPVUv-image-1734747602297.png)](https://iovhm.com/book/uploads/images/gallery/2024-12/TuqseE0Eyb0mPVUv-image-1734747602297.png)



  
- 方法二，使用下面的字符串替换


#### 页面中写死的API地址

- **编写一段API替换脚本和nginx启动脚本**

**注意第一句的#!/bin/bash , 根据镜像不同，可能是#!/bin/sh**
  
```shell
#!/bin/bash
# 根据基础镜像的不同，可能是/bin/sh，而且这句要是第一句

# 如果环境变量存在则用环境变了，如果环境变量不存在，则使用默认值，注意前面的减号语法(-)
OLD_URL=${OLD_URL:-"https://park.wvpark.com:802/"}
NEW_URL=${NEW_URL:-"http://weipin.hmncloud.top/"}

# 文件名称很确定，直接替换
sed -i "s|${OLD_URL}|${NEW_URL}|g" /usr/share/nginx/html/assets/iframe-view-4c8b16ca.js

# 不管什么文件，直接替换
# grep -rl "ak=${OLD_AK}" /usr/share/nginx/html | xargs sed -i "s|ak=${OLD_AK}|ak=${NEW_AK}|g"

# 文件名称相对确定，查找替换
# SEARCH_DIR="/usr/share/nginx/html/assets"
# FILE_PREFIX="iframe-view*.js"
# for FILE in $(find "$SEARCH_DIR" -type f -name "${FILE_PREFIX}"); do
#     # 使用 sed 进行替换操作，-i 选项表示直接编辑文件
#     sed -i "s|${OLD_URL}|${NEW_URL}|g" "$FILE"
#     # 打印已处理的文件名
#     echo "Processed file: $FILE"
# done

# 启动nginx
nginx -g 'daemon off;'


```

- **将配置文件放入configmap并挂载或则直接挂载进容器,并设置挂载文件为777权限**

docker和docker-compose挂载为777 请自行百度


[![](https://iovhm.com/book/uploads/images/gallery/2024-12/scaled-1680-/7aLrlKhkog4WnKj3-image-1734733921783.png)](https://iovhm.com/book/uploads/images/gallery/2024-12/7aLrlKhkog4WnKj3-image-1734733921783.png)

[![](https://iovhm.com/book/uploads/images/gallery/2024-12/scaled-1680-/itsb3yTwEgpLIqjQ-image-1734733960919.png)](https://iovhm.com/book/uploads/images/gallery/2024-12/itsb3yTwEgpLIqjQ-image-1734733960919.png)

[![](https://iovhm.com/book/uploads/images/gallery/2024-12/scaled-1680-/YjEME16QwY115Kcx-image-1734734124040.png)](https://iovhm.com/book/uploads/images/gallery/2024-12/YjEME16QwY115Kcx-image-1734734124040.png)

- **将容器的启动命令设置为自己的启动脚本**

[![](https://iovhm.com/book/uploads/images/gallery/2024-12/scaled-1680-/atbTXHc9ztaC2iEH-image-1734734175536.png)](https://iovhm.com/book/uploads/images/gallery/2024-12/atbTXHc9ztaC2iEH-image-1734734175536.png)