第一步:在docker里部署彩虹聚合DNS管理系统 需要修好映射目录的路径“/volume1/docker/dnsmgr/web”,“/mysql/logs”,“/mysql/data”,“/mysql/conf/my.cnf”替换成自己映射目录路径,
- version: '3'
- services:
- dnsmgr-web:
- container_name: dnsmgr-web
- stdin_open: true
- tty: true
- ports:
- - 8081:80
- volumes:
- - /volume1/docker/dnsmgr/web:/app/www
- image: netcccyun/dnsmgr
- depends_on:
- - dnsmgr-mysql
- networks:
- - dnsmgr-network
- dnsmgr-mysql:
- container_name: dnsmgr-mysql
- restart: always
- ports:
- - 3306:3306
- volumes:
- - ./mysql/conf/my.cnf:/etc/mysql/my.cnf
- - ./mysql/logs:/logs
- - ./mysql/data:/var/lib/mysql
- environment:
- - MYSQL_ROOT_PASSWORD=123456
- - TZ=Asia/Shanghai
- image: mysql:5.7
- networks:
- - dnsmgr-network
- networks:
- dnsmgr-network:
- driver: bridge
复制代码在运行之前请创建好目录
需要在本地先创建好MySQL映射目录的文件夹
在conf文件夹里上传一个名为“my.cnf”的文件,“my.cnf”的内容是: - [mysqld]
- sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
复制代码完成以上后,启动项目,然后需要到MySQL容器的终端创建数据库 - mysql -uroot -p123456
- create database dnsmgr;
复制代码
第二步:安装彩虹聚合DNS管理系统 在浏览器上打开飞牛nas地址+端口(https://ip:8081)进行安装彩虹聚合DNS管理系统,MySQL数据库地址填写飞牛nas地址
第三步:彩虹聚合DNS管理系统的后台->域名账户->添加对应dns解析平台
设置对应平台后,彩虹聚合DNS管理系统的后台->域名管理->添加对应的域名
第四步:彩虹聚合DNS管理系统的后台->SSL证书->SSL证书账户->添加你喜欢的SSL签发平台对应的账号
第五步:彩虹聚合DNS管理系统的后台->SSL证书->SSL证书订单->添加对应的域名订单
第六步:彩虹聚合DNS管理系统的后台->SSL证书->自动部署账户->添加ssh服务器 需要开启root权限
第七步:彩虹聚合DNS管理系统的后台->SSL证书->自动部署任务->创建自动部署任务
先在SSL证书订单下载证书到电脑上,在飞牛nas证书里上传证书 SSH连接
在设置中打开SSH连接,下载finallshell(或别的),通过ssh连接fnos 获取证书的存放位置,拿到证书key和crt的存放位置 cat /usr/trim/etc/network_cert_all.conf证书key和crt的存放位置,如: /usr/trim/var/trim_connect/ssls/abc.cn/1735000000/abc.cn.crt/usr/trim/var/trim_connect/ssls/abc.cn/1735000000/abc.cn.key证书保存路径 填写:/usr/trim/var/trim_connect/ssls/abc.cn/1735000000/abc.cn.crt
私钥保存路径 填写:/usr/trim/var/trim_connect/ssls/abc.cn/1735000000/abc.cn.key
在映射目录里创建一个sh脚本文件,命名为:update_ssl.sh,内容为: - # 获取新证书的到期日期并更新数据库中的证书有效期
- NEW_EXPIRY_DATE=$(openssl x509 -enddate -noout -in "$1" | sed "s/^.*=\(.*\)$/\1/")
- NEW_EXPIRY_TIMESTAMP=$(date -d "$NEW_EXPIRY_DATE" +%s%3N) # 获取毫秒级时间戳
- echo "新证书的有效期到: $NEW_EXPIRY_DATE"
- # 更新数据库中的证书有效期
- echo "更新数据库中的证书有效期..."
- psql -U postgres -d trim_connect -c "UPDATE cert SET valid_to=$NEW_EXPIRY_TIMESTAMP WHERE domain='$2'"
- echo "证书更新完成!"
- # 重启服务
- echo "正在重启相关服务..."
- systemctl restart webdav.service
- systemctl restart smbftpd.service
- systemctl restart trim_nginx.service
- echo "服务重启完成!"
复制代码
获取sh脚本文件路径
上传完执行命令 填写:
- chmod +x /vol1/1000/docker/dnsmgr/web/update_ssl.sh
- /vol1/1000/docker/dnsmgr/web/update_ssl.sh /usr/trim/var/trim_connect/ssls/abc.cn/1735000000/abc.cn.crt abc.cn
复制代码 命令解析:
chmod +x /vol1/1000/docker/dnsmgr/web/update_ssl.sh 给脚本文件赋予相应权限
/vol1/1000/docker/dnsmgr/web/update_ssl.sh /usr/trim/var/trim_connect/ssls/abc.cn/1735000000/abc.cn.crt abc.cn 脚本路径+空格+证书路径+证书名称,证书名称在飞牛nas证书那里显示有,假如是*.abc.cn就要把” *. “删除掉。
|