扒系统CR8记录

   

目录

终极改造目标

过程记录

参考


为了将一套在线安装的系统,在不了解其架构、各模块细节的基础上,进行扒弄清楚,作以下记录。

终极改造目标

最终的目标,就是只通过CreMedia8_20230207.tar.gz解压 install 就把业务包安装了;

通过另外的一个安装包,一键离线安装了nginx mysql php ; 

省去了boost的安装(相关用到的so拷过去即可);省去了nginx等固定中间件的在线安装(耗时且在局域网环境无法安装)

应该是先装nginx mysql php ; 再 CreMedia8_20230207  install.sh ; 然后数据库的业务安装

过程记录

 (1) 安装完成后诸多模块启动不来。甚至连 scp ,ssh 都不好用了。

scp: /usr/lib/libcrypto.so.10: no version information available (required by /usr/lib64/libldap-2.4.so.2)
scp: /usr/lib/libcrypto.so.10: no version information available (required by /usr/lib64/libldap-2.4.so.2)
scp: /usr/lib/libssl.so.10: no version information available (required by /usr/lib64/libldap-2.4.so.2)
scp: relocation error: /usr/lib64/libldap-2.4.so.2: symbol EC_KEY_free, version OPENSSL_1.0.1_EC not defined in file libcrypto.so.10 with link time reference

 解决方法:

 可以敲一敲 ssh 或者scp,或者看看ldd ssh等方式 ,就知道依赖的库(so)出问题了。而原因,就在于/home/dualven/create8/CreMedia8里install.sh  ,按以前的库编译出来的做出的脚本,把centos7.9这个一半的库破坏了。 

改成:

 

 (2) boost 不想安装了,直接拷这部分的库,否则CUI用不了

  修改了 boost相关的库,这样设备就可以接入了 CUI可用
scp  /usr/local/lib/libboost_* 10.60.100.197:/usr/local/lib/

这个忘记是哪个用的了

 /usr/lib/libCR_MiniImage.so 10.60.100.200://usr/lib/libCR_MiniImage.so

(3) 解除了在线安装mysql , nginx, php后,需要以docker来安装他们-----mysql

mysql:5.5.46(docker) 安装时的报错记录_dualven_in_csdn的博客-CSDN博客

(4) 解除了在线安装mysql , nginx, php后,需要以docker来安装他们-----php

这个扩展安装的是比较麻烦的,排查极其复杂

soap:

    docker-php-ext-install soap 报错;参考下面链接 apt-get install libxml2  libxml2-dev后,再

docker-php-ext-install soap即可。通过 php -m 或者 页面上的phpinfo.php上确认。

   参考 这个文章装(292条消息) configure: error: xml2-config not found. Please check your libxml2 installation_superJamison的博客-CSDN博客_configure: error: xml2-config not found. please ch

mcrypt: 这个不装在执行webservice时的一个mcrypt的方法不能用

     docker-php-ext-install mcrypt 

docker-php-ext-install zip

docker-php-ext-install xmlrpc

(5) 解除了在线安装mysql , nginx, php后,需要以docker来安装他们-----nginx

      在webservice 没有响应的时候,/home/wwwroot/GSoapWebServiceSDK/test/里可以进行测试,当通过 netstat -anp|grep 172.36.0.4 发现有wait php-fpm里的webservice时,曾经怀疑nginx的2580->172.36.0.4:XXXX不能通。(实际是可以通的,还是因为mcrypt 让它直接 mcrypt_module_open 这个方法不能用,通过浏览器的 “网络”-》返回参数看到了提示)

    nginx与php通的两种方式:坑爹的是通过文件通讯的时候,需要手动chmod 777 home/wwwroot/php-fpm.sock; 不然nginx无法访问 。

docker cp www.conf  create-php:/usr/local/etc/php-fpm.d/www.conf
 docker cp zz-docker.conf  create-php:/usr/local/etc/php-fpm.d/zz-docker.conf

www.conf:

listen = 127.0.0.1:9000
;listen = /home/wwwroot/php-fpm.sock

zz-docker.conf
[www]
listen = 9000
#listen = /home/wwwroot/php-fpm.sock

/docker/nginx/conf/create.conf:

 fastcgi_pass    172.36.0.4:9000;
#fastcgi_pass   unix:/home/wwwroot/php-fpm.sock;

 (6) 调用webservice时

/home/wwwroot/GSoapWebServiceSDK/utility/global.fun.php
<?php
ini_set('date.timezone','Asia/Shanghai');  加这一行防止出现date相关的warning,让soap无法执行

(7) 手动修改/nmi/dbserver/dbsoruc.ini  ->3999 可以使wizard修改成功,可能上一步的数据库修改作不能跨越库。

(8)  如果 在这里点击提示未登陆,则要看下密码。/home/wwwroot/nmi/dbserver/PlatConnParam.ini要填这个密码。记住 是creditedpasswd....

 (9) docker 特殊化的存储路径 

create-nginx :  ln -sf /home/wwwroot/storage  /home/storage

在宿主主机 也作这样的映射。

这样nginx认为 的/home/storage 及外界CRPlatform认为的/home/storage就通过  /home/wwwroot/storage桥接起来了

 

参考

调试的时候让http也能调各种音视频资源

TypeError: Cannot read property 'getUserMedia' of undefined - 养猪至富 - 博客园 (cnblogs.com)

Nginx与PHP交互过程 + Nginx与PHP通信的两种方式_筑梦悠然的博客-CSDN博客_nginx如何通信到php

猜你喜欢

转载自blog.csdn.net/dualvencsdn/article/details/129263083
CR