说明
现有客户的服务器定制都是在web代码基础上修改,当客户服务器发生操作系统重装、损坏或软件升级等情况时,相关定制功能丢失,需要研发介入完成备份、修改或重做,时间和人力成本高昂。
为提升运维效率,后期所有服务端能够独立开发的定制功能,如IC卡同步、教务数据同步等功能将通过容器技术实现,研发部分完成定制功能开发后,技术部门只需要按照下述标准流程实施即可。
已有定制说明
已经完成定制的学校暂时不做处理,等有需要时由研发部完成代码容器化并添加到本页附录中。
镜像服务器
当前所有镜像都存储在腾讯云镜像服务器中,相关情况请联系liux@idste.cn。
附录为已有定制镜像列表。
镜像命名规范
镜像名称优先使用学校域名,如长春工业大学使用ccut.edu.cn,没有域名时使用“省份.城市.学校名”的拼音首字母,如成都师大附小使用sc.cd.sdfx
容器命名规范
运行的容器名称使用“idste.service.[镜像名称]“命名,以同时表征服务提供商及使用单位,如长春工业大学的容器为idste.service.ccut.edu.cn。
除附录中的容器外,其它同步需要使用标准化同步方案。
流程一: 安装docker
流程二:数据库确认
IC卡和教务数据同步需要使用到第三方数据库和iDste数据库,前端为数据提供者,后者为数据接收者,在实施时需要注意以下几方面:
IC卡数据库IP:InfomationID; 0x12e、Description: IP地址;
IC卡数据库库名/SID/服务名:InfomationID:0x12f、Description: 库名或服务名;
IC卡数据库账号:InfomationID; 0x130、Description: 账号;
IC卡数据库密码:InfomationID; 0x131、Description: 密码;
IC卡数据库类型:InfomationID; 0x132、Description: 可选”mysql”/“oracle/service”/“mssql”;
IC卡数据库端口:InfomationID; 0x133、Description: 端口值;
端口是否可达可通过`nc -v host port`命令测试,如果不可达需要联系网络管理员解决
检查数据库是否可登录,如果学校没有防火墙,可使用dbeaver工具测试
上述测试可运行容器后查看容器是志时检查到,如果有问题会有提示信息
grant select,delete,update,insert on nccs.* to 'iDsteSync'@'127.0.0.1' identified by 'iDste1057Sync';
flush privileges;
流程三: 登录并获取镜像 (服务器R07.02及以上版本:使用release版本的容器。服务器R06.08及以下版本:使用v0.9版本的容器。)
docker login –username 9026849 ccr.ccs.tencentyun.com # 密码为iDste1057Hello
docker pull ccr.ccs.tencentyun.com/idste-cus/[容器名称]
docker run -itd –name idste.service.[容器名称] –net=host –restart=always ccr.ccs.tencentyun.com/idste-cus/[容器名称] # 运行容器,restart=always表示容器退出后自动重启, –net=host使用主机网络
docker logout ccr.ccs.tencentyun.com # 退出镜像服务器
其它命令
docker exec -it idste.service.[容器名称]
cat /var/log/workerman/xxx # 替换成真实的文件
附录: 定制容器列表
长春工业大学IC卡同步容器:ccr.ccs.tencentyun.com/idste-cus/ccut.edu.cn