Docker实现调度系统整体部署

Docker实现调度系统整体部署

背景

为打破传统AMR调度系统架构要求较高的部署方式和操作面板限制,使用web+mqtt+docker技术实现迁移性强、成本低廉、多平台化的AMR调度系统。

涉及到:

  • Docker镜像自动化部署

  • Django代码加密

  • Dispatching代码加密

本文只提供思路,不涉及具体项目:)

Docker

使用centos7.9镜像搭建服务:

  • ssh
  • nginx
  • python
  • mysql
  • redis
  • django
  • mqtt

搭建过程很简单,就不赘述了,规划好各个服务之间的端口区间、统一配置文件,自启动服务,再打包就好了

自动化部署脚本

利用Docker便于迁移的特性,实现Linux/win的自动化部署

部署前需要查看宿主机空闲的端口区间是否满足系统部署需要,比如win下可以使用:

netsh interface ipv4 show excludedportrange protocol=tcp

则会显示占用的ipv4的端口区间

建议自动化部署脚本具备全离线安装,适应局域网环境,附上简易版的部署手册:

确认安装清单

共11个文件,其中镜像ubt-amrb-dc.tar的MD5为:f4094908523158f0dd9d66fb4eab56cd,建议复制完成后检查其MD5值是否相同。

微信截图_20220321152009.png

确认客户机环境

为保障性能和稳定性,不推荐在Windows下使用虚拟机搭建业务环境,且需确保环境配置最低为:内存:4G,硬盘空间:60G

确认客户机环境为Centos:

cat /etc/redhat-release

如果显示:CentOS Linux release 7.9.2009 (Core)则符合要求,版本大数为7.9即可。

创建工作目录

如果权限不够,输入:

sudo su

/home下创建rcs目录:

mkdir /home/rcs
拷贝安装文件

确定U盘文件格式为exfat,复制文件到工作目录

mv ./rcs /home/rcs
自动化安装

提升脚本权限:

chmod +x installer.x

运行安装脚本:

./installer.x
导入镜像 ubt-amrb-dc.tar 中...
sha256:97ee8a0f2bf1389ceb2e1703a0328ff86f3400b3d511eacfd2b2b4200e570736
启动容器 with ubt-amrb-dc.tar...
b699b460410477cde69bf730acb5b6f67067f1c1aa2790a1050460b4344acd4e
部署完成!

等待安装完成后,检测docker容器是否运行:

docker ps -a

如果看到ubt-amrb容器运行则安装成功

调试

建议执行诸如重启客户机器和常规冒烟操作测试是否安装成功

tips

  • 进行必要的容器安全设置,不暴露非必要端口、使用秘钥登录、定时清理其他服务、宿主机使用安全策略等

  • 推荐使用systemctl代替/etc/rc.loacl

  • 统一配置文件存放

  • 测试系统周期运行日志文件大小,设定最小需求空间

Django代码加密

常见的有:

  • pyarmor
  • 混淆加密:注意提示语别混淆了,不然显示乱码

按需选择,测试通过就好了

Dispatching代码加密

纯Python程序可以使用pyinstall加密,加密过程见博客:

赞赏
Nemo版权所有丨如未注明,均为原创丨本网站采用BY-NC-SA协议进行授权,转载请注明转自:https://nemo.cool/908.html

Nemo

文章作者

推荐文章

发表回复

textsms
account_circle
email

Docker实现调度系统整体部署
背景 为打破传统AMR调度系统架构要求较高的部署方式和操作面板限制,使用web+mqtt+docker技术实现迁移性强、成本低廉、多平台化的AMR调度系统。 涉及到: Docker镜像自动化部署 Djang…
扫描二维码继续阅读
2022-08-25