推荐镜像部署
安装docker
注意docker国内需要更换源
以Centos为例Centos
代码块 |
---|
yum -y update yum remove docker docker-common docker-selinux docker-engine yum install -y yum-utils device-mapper-persistent-data lvm2 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo yum list docker-ce --showduplicates | sort -r yum -y install docker-ce.x86_64 systemctl start docker systemctl enable docker |
Ubuntu自行搜索安装
Ubuntu
代码块 |
---|
apt-get update
apt-get remove docker docker-engine docker.io containerd runc
apt-get install apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt install docker-ce docker-ce-cli containerd.io
systemctl start docker
systemctl enable docker |
导入镜像
下载omc的镜像包omc.tar,在192.168.1.27的目录:/home/data2/back_up/
(可以使用ssh登录192.168.1.27或者192.168.1.28上自行导出镜像包)。下载omc的镜像包omc.tar,导入为镜像
代码块 |
---|
docker import omc.tar omc:latest |
...
代码块 |
---|
docker run -itd --name omcd --restart=always -p 20080:80 -p 20088:20088 -p 28011:28011 -network host omc:latest /usr/bin/supervisord -c /etc/supervisor/supervisord.conf |
...
代码块 |
---|
docker exec -it omcd bash |
此时已在容器内部此时已在容器内部,需要删除旧的配置文件(这步可以在制作镜像时优化,使用时就不用操作这一步了)
执行下列命令,运行omcd会重新生成license
代码块 |
---|
rm -rf /omclicense echo "eth0" > /home/ifcName |
查找到容器的ip,假设ip为172.17.0.2
修改mongo db的启动配置文件
修改omcd的配置文件
重启容器即完成部署
/app/omcd |
生成license成功后会自动退出程序,再将/home/ifcName删除
代码块 |
---|
rm -rf /home/ifcName |
重启程序看到正常日志即部署成功
数据库迁移
有些数据库不是运行在容器内的,迁移时要进入后台关闭mongodb,如果直接kill进程会导致数据库文件异常
代码块 |
---|
#注意替换用户及密码
/home/mongodb/mongodb-linux-x86_64-ubuntu2004-5.0.5/bin/mongo --port 28011 --host 0.0.0.0 -u mXX -p mXX1XXMXX --authenticationDatabase admin
#进入mongo的后台后执行关闭指令
use admin
db.shutdownServer() |
代码块 |
docker restart omcd |