当前位置: 首页 > article >正文

【容器】Docker打包Linux操作系统迁移

0x0 场景

因老服务器操作系统文centos6.5,现要迁移至uos v20 1050a(底层centos8),其中需要迁移的应用组件有:
mysql 、tomcat、apachehttpd,因版本跨越太大,导致centos8直接安装无法完全恢复原项目,故使用docker打包还原。

0x1 旧服务器操作

将原来的系统打包压缩:
[root@localhost ~]# tar -cvpzf web.tar --exclude=/root/ --one-file-system /

0x2 新服务器操作

在新服务器根目录下创建images
[root@localhost ~]# scp web.tar root@141.73.28.41:/images

将打包好的文件上传的新服务器:(在新服务器根目录下创建images)
[root@localhost ~]# mkdir /images
新服务器配置Yum源
[root@localhost ~]# mkdir /cdrom
[root@localhost ~]# mkdir /iso
将1050A镜像上传到/iso文件夹
[root@localhost ~]# mv UniontechOS.repo UniontechOS.repo.bakup
[root@localhost ~]# im local.repo
[BaseOS]
name=BaseOS
enabled=1
baseurl=file:///cdrom/BaseOS
gpgcheck=0

[AppStream]
name=AppStream
enabled=1
baseurl=file:///cdrom/AppStream
gpgcheck=0
[root@localhost ~]# mount /iso/uniontechos-server-20-1050a-amd64-UFU.iso /cdrom/
[root@localhost ~]# yum makecache
[root@localhost ~]# yum repolist

新服务器安装docker:
[root@localhost ~]# yum install -y docker*
启动docker:
[root@localhost ~]# sudo systemctl start podman
查看docker状态:
[root@localhost ~]# sudo systemctl status podman
关闭docker:
[root@localhost ~]# sudo systemctl stop podman
查看Docker版本
[root@localhost ~]# docker -v
将从源服务器传过来的tar包构建为镜像
[root@localhost ~]# podman import /images/web.tar web:10.1
查看镜像列表
[root@localhost ~]# podman images
REPOSITORY TAG IMAGE ID CREATED SIZE
localhost/web 10.1 8325de10efe0 3 days ago 239 GB
启动镜像:
[root@localhost ~]# podman run -it -p 80:80 -p 8080:8080 -d web /bin/bash
[root@localhost ~]# podman ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
42eff5a638b7 localhost/web:10.1 /bin/bash 21 hours ago Up 21 hours ago 0.0.0.0:80->80/tcp, 0.0.0.0:8080->8080/tcp priceless_franklin
进入容器
[root@localhost ~]# podman exec -it 42eff5a638b7 /bin/bash
更新环境变量
[root@42eff5a638b7 /]# source /etc/profile
启动数据库
[root@42eff5a638b7 /]# service mysqld restart
启动Tomcat
[root@42eff5a638b7 /]# cd /usr/apache-tomcat-6.0.18/bin/
[root@42eff5a638b7 bin]# ./startup.sh
Using CATALINA_BASE: /usr/apache-tomcat-6.0.18
Using CATALINA_HOME: /usr/apache-tomcat-6.0.18
Using CATALINA_TMPDIR: /usr/apache-tomcat-6.0.18/temp
Using JRE_HOME: /usr/local/jdk1.6.0_29
启动httpd
[root@42eff5a638b7 /]# service httpd restart

0x3 常用命令

查看运行的容器: podman ps
查看全部容器: podman ps -a
启动容器并放行端口: podman run -it -p 80:80 -p 8080:8080 -d web /bin/bash
进入容器: podman exec -it 42eff5a638b7 /bin/bash
构建镜像: podman import /images/web.tar web:10.1


http://www.kler.cn/a/153594.html

相关文章:

  • 【HuggingFace Transformer库学习笔记】基础组件学习:Tokenizer
  • 软件测试经典面试题分析——软件测试流程(第1天)
  • Leetcode 第 373 场周赛题解
  • 11.28 C++作业
  • Collection的其他相关知识
  • 后端项目操作数据库增删改查-使用MyBatis配置实现数据操作
  • Vue3的reactive、ref、toRef、toRefs用法以及区别
  • 解决VSCode按住Ctrl(or Command) 点击鼠标左键不跳转的问题(不能Go to Definition)
  • 【JavaScript手撕代码】防抖节流
  • nginx配置反向代理及负载均衡
  • 30秒搞定一个属于你的问答机器人,快速抓取网站内容
  • c语言,输入整数n(行数,本例为4),按照如下规则打印数字图片 1 5 9 13 2 6 10 14 3 7 11 15 4 8 12 16
  • ubuntu系统下搭建本地物联网mqtt服务器的步骤
  • 01-使用Git操作本地库,如初始化本地库,提交工作区文件到暂存区和本地库,查看版本信息,版本切换命令等
  • 【LeetCode:1094. 拼车 | 差分数组】
  • 模板上新|2023年10月DataEase模板市场上新动态
  • 【数据结构】拆分详解 - 堆
  • 数据结构算法-选择排序算法
  • webpack 使用打包报错 ERROR in node_modules\@types\node\ts4.8\assert.d.ts
  • 图解java.util.concurrent并发包源码系列——深入理解定时任务线程池ScheduledThreadPoolExecutor