gptapi commited on
Commit
c544ebf
·
verified ·
1 Parent(s): 4b180c8

Update load-ca.sh

Browse files
Files changed (1) hide show
  1. load-ca.sh +16 -8
load-ca.sh CHANGED
@@ -1,17 +1,25 @@
 
1
  #!/bin/sh
2
 
3
- # 将环境变量中的证书内容写入文件
4
- echo "$CA_CERT_CONTENT" | sed 's/\\n/\n/g' > /certs/custom/db-ca.crt
 
 
 
5
 
6
  # 验证证书有效性
7
- if ! openssl x509 -in /certs/custom/db-ca.crt -noout; then
8
- echo "Invalid CA certificate format"
 
9
  exit 1
10
  fi
11
 
12
- # 添加到系统信任
13
  cp /certs/custom/db-ca.crt /usr/local/share/ca-certificates/
14
- update-ca-certificates
 
 
 
15
 
16
- # 执行原始ENTRYPOINT
17
- exec "$@"
 
1
+ # 改进的load-ca.sh脚本
2
  #!/bin/sh
3
 
4
+ # 创建目标目录(防止父目录不存在)
5
+ mkdir -p /certs/custom || exit 1
6
+
7
+ # 转换环境变量为证书文件
8
+ echo "${CA_CERT_CONTENT}" | awk '{gsub(/\\n/,"\n")}1' > /certs/custom/db-ca.crt
9
 
10
  # 验证证书有效性
11
+ if ! /usr/bin/openssl x509 -in /certs/custom/db-ca.crt -noout 2>/dev/null; then
12
+ echo "ERROR: Invalid certificate format. Actual certificate content:"
13
+ cat /certs/custom/db-ca.crt
14
  exit 1
15
  fi
16
 
17
+ # 添加到系统证书
18
  cp /certs/custom/db-ca.crt /usr/local/share/ca-certificates/
19
+ update-ca-certificates --fresh
20
+
21
+ # 权限修正(适配非root用户)
22
+ chmod 644 /etc/ssl/certs/*.pem 2>/dev/null || true
23
 
24
+ # 执行原始入口命令
25
+ exec "$@"