增加配置文件映功能

This commit is contained in:
liu.chunxun 2025-09-09 17:38:27 +08:00
parent 5dfd54c5ef
commit e0b69687e6
4 changed files with 37 additions and 4 deletions

View File

@ -36,5 +36,6 @@ RUN apt update && \
COPY overlay/localtime /etc
COPY prog /home/
COPY start.sh /home
WORKDIR /home
CMD ["/home/start.sh"]

View File

@ -14,6 +14,12 @@
- packedge 虚拟驱动程序包,有 virhwedge 直接打包而来Edge_PLCDrv_amd64_v1.1.1_5.0.5.tar.gz
### 发布
在edge 发布版本时注意修改卷映射,将容器目录修改为: /var/IoTEdge/config
![alt text](image.png)
在edge 发布版本时注意修改卷映射:
| 本地卷名称 | 类型 | 主机目录 | 容器目录 | 权限 |
| :--- | :--- | :--- | :--- | :--- |
| log | LOG | / | /home/app/log | 读写 |
| config | CONFIG | /sdk_cfg | /home/app/conf | 读写 |
| config | CONFIG | /dev_cfg | /home/app/PlcColDLL/CfgFile | 读写 |

View File

@ -49,6 +49,9 @@ tar -xzf "$COMPRESSED_FILE" -C "$TARGET_DIR" || {
exit 1
}
#备份压缩文件
cp $COMPRESSED_FILE $TARGET_DIR/backup.tar.gz
# Docker构建参数配置
declare -A ARCH_CONFIG=(
["arm64"]="ARCH32="armhf" linux/arm64"
@ -57,7 +60,7 @@ declare -A ARCH_CONFIG=(
# 动态生成镜像标签
#IMAGE_TAG="gitiot.mgm-iot.com/iot_images/edge_${ARCH_TYPE}:v1.0.0"
IMAGE_TAG="swr.cn-north-4.myhuaweicloud.com/cloud-yuzhen/edge_plc_all_${ARCH_TYPE}:${VERSION}"
IMAGE_TAG="swr.cn-north-4.myhuaweicloud.com/cloud-yuzhen/edge_plc_wb_${ARCH_TYPE}:${VERSION}"
# 执行构建命令网页3/5的Docker参数传递模式
echo "启动Docker构建架构$ARCH_TYPE..."
@ -75,4 +78,4 @@ $BUILDCMD || {
echo "构建完成,镜像已生成:$IMAGE_TAG"
echo "正在推送镜像到镜像仓库..."
docker push "$IMAGE_TAG"
# docker push "$IMAGE_TAG"

23
start.sh Executable file
View File

@ -0,0 +1,23 @@
#!/bin/sh
work_dir="/home"
sdk_cfg="app/conf"
app_cfg="cfg"
plc_cfg="app/PlcColDLL/CfgFile"
if [ -z "$(ls -A $work_dir/$sdk_cfg)" ]; then
echo "Directory '$work_dir/$sdk_cfg' is empty or does not exist."
tar -zxf /home/backup.tar.gz -C $work_dir $sdk_cfg
fi
if [ -z "$(ls -A $work_dir/$app_cfg)" ]; then
echo "Directory '$work_dir/$app_cfg' is empty or does not exist."
tar -zxf /home/backup.tar.gz -C $work_dir $app_cfg
fi
if [ -z "$(ls -A $work_dir/$plc_cfg)" ]; then
echo "Directory '$work_dir/$plc_cfg' is empty or does not exist."
tar -zxf /home/backup.tar.gz -C $work_dir $plc_cfg
fi
cd /home/app
./start_app.sh