此文章主要是为了说明GatewayServer如何在docker中运行,具体的使用场景需要结合业务来灵活变动。
以AGR系列为例进行说明,任何支持docker的公司产品均可以按照此方法实施。
释放空间
由于AGR系列/userdata储存空间锁定为了1G,需要释放空间
修改原来的启动脚本/app/startApp.sh,如果需要修改ip可以在此脚本修改
释放空间前需要退出占用了该分区的程序,开启看门狗
kill -9 $(pidof GatewayServer); kill -9 $(pidof MSJDaemon); wdt &
释放空间后/userdata可用空间为8G,有更大储存空间需求的可以加装硬盘。
umount /userdata mkfs.ext4 /dev/mmcblk0p14 mount -t ext4 /dev/mmcblk0p14 /userdata
配置docker
修改整个系统为可写文件系统,创建/修改docker配置文件
mount -o remount rw /
重启dockerd
kill -9 $(pidof dockerd);/usr/bin/dockerd &
运行容器
导入镜像
下载omc的镜像包fsu.tar,在192.168.1.27的目录:/home/data2/back_up/
(容器保存的tar文件,使用的命令对为docker export/import)
(镜像保存的tar文件,使用的命令对为docker save/load)
docker load -i fsu.tar
查看images的ID
运行容器
docker run --privileged -itd --name fsu --restart=always \ -v /appdata:/appdata \ -v /app:/app \ -v /opt:/opt \ -v /appbak:/appbak \ -v /dev:/dev \ --network host a833ccc1e822 bash
进入容器
docker exec -it fsu bash
启动GatewayServer
注意事项
由于GatewayServer运行在容器内部,宿主机的部分依赖可能有缺失,需要具体问题具体分析解决。
例如:网络设置,可以运行下列指令让docker容器访问互联网。
route add default eth0 route add default gw 192.168.1.200