​主要作用: 就是让配置好的容器,可以得到复用,后面用到得的时候就不需要重新配置。

其中涉及到的命令有:

docker commit 将容器保存为镜像

docker save -o 将镜像备份为tar文件

docker load -i 根据tar文件恢复为镜像

老服务器

docker备份

[root@it-1c2d ~]# docker ps
[root@it-1c2d ~]# docker commit nginx nginx20230927
sha256:a60c338d123fe1b6f7f9d336f5482c64d4f8544ce5419dc75294e2cbf5467078
[root@it-1c2d ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx20230927 latest a60c338d123f 3 seconds ago 187MB
nginx latest 89da1fb6dcb9 2 months ago 187MB
[root@it-1c2d ~]# docker save -o nginx20230927.tar nginx20230927
[root@it-1c2d ~]# ls -lrt
-rw------- 1 root root 191403008 Sep 27 14:18 nginx20230927.tar

传到新服务器

scp -v nginx20230927.tar root@xxx.xxx.xxx.xxx:/root

有些本地挂载的目录也传到新服务器对应位置

scp -rv /home/nginx/ root@xxx.xxx.xxx.xxx:/home/nginx

新服务器 欧拉

docker恢复

安装docker

dnf install -y docker

恢复docker

[root@localhost ~]# docker load -i nginx20230927.tar
c6e34807c2d5: Loading layer [==================================================>] 77.81MB/77.81MB
24ee1d7d6a62: Loading layer [==================================================>] 113.2MB/113.2MB
4deafab383fa: Loading layer [==================================================>] 3.584kB/3.584kB
8aedfcd777c7: Loading layer [==================================================>] 4.608kB/4.608kB
c88d3a8ff009: Loading layer [==================================================>] 2.56kB/2.56kB
abc3beec4b30: Loading layer [==================================================>] 5.12kB/5.12kB
922d16116201: Loading layer [==================================================>] 7.168kB/7.168kB
ea4026767793: Loading layer [==================================================>] 328.2kB/328.2kB
Loaded image: nginx20230927:latest
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx20230927 latest a60c338d123f 23 minutes ago 187MB

新服务器启动docker

[root@localhost conf.d]# docker run  -d -p 80:80 -p 443:443 --name nginx -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx/logs:/var/log/nginx -v /home/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v /home/nginx/ssl:/etc/nginx/ssl nginx20230927

Docker跨主机跨服务器迁移的更多相关文章

  1. 使用weave实现跨主机docker容器互联

    关于weave的原理不做细致的说明,如果想了解weave可以登陆官网:https://www.weave.works/ In this post,使用阿里云3台ECS服务器进行weave搭建,并测试搭 ...

  2. Docker:使用Ambassador进行跨主机间容器通信

    转载请注明出处:点我 由于Docker自身的网络的原因,想要在多主机间的容器之间进行通信是比较麻烦的事情.可以利用Ambassador容器来实现这一功能. 基本原理: 利用Ambassador来实现主 ...

  3. centos7下安装docker(16.docker跨主机存储)

    从业务数据的角度看,容器可以分为两类:无状态(stateless)容器和有状态(stateful)容器. 无状态:是指容器在运行的过程中不需要保存数据,每次访问的结果不依赖上一次的访问,比如提供静态页 ...

  4. centos7下安装docker(15.5容器跨主机网络--flanneld)

    flannel是由CoreOS研究的一种覆盖网络(overlay network)网络工具,目的是帮助每一个host主机有一个完整的子网: 功能是:让集群中不同节点的主机创建的容器都有一个唯一的虚拟I ...

  5. centos7下安装docker(15.4跨主机网络-flannel)

    flannel是CoreOS开发的容器网络解决方案,flannel为每一个host分配一个subnet,容器从这些subnet中分配IP,这些IP可以在host之间路由,容器无需NAT和port ma ...

  6. docker swarm 搭建及跨主机网络互连案例分析

    准备工作 安装docker,不建议直接使用Docker官方的yum install docker wget http://yum.dockerproject.org/repo/main/centos/ ...

  7. Docker容器跨主机通信之:直接路由方式

    一.Docker网络基本原理 直观上看,要实现网络通信,机器需要至少一个网络接口(物理接口或虚拟接口)与外界相通,并可以收发数据包:此外,如果不同子网之间要进行通信,需要额外的路由机制. Docker ...

  8. 基于Ceph分布式集群实现docker跨主机共享数据卷

    上篇文章介绍了如何使用docker部署Ceph分布式存储集群,本篇在此基础之上,介绍如何基于Ceph分布式存储集群实现docker跨主机共享数据卷. 1.环境准备 在原来的环境基础之上,新增一台cen ...

  9. Docker跨主机网络实践

    Docker使用中网络管理是最麻烦的,在项目初始化前期就需要进行合理的规划,如果在比较理想的单主机的网络通信是比较简单的,但如果涉及到跨主机的网络就需要使用docker自带的overlay netwo ...

  10. Docker容器利用weave实现跨主机互联

    Docker容器利用weave实现跨主机互联 环境: 实现目的:实现主机A中容器1与主机B中容器1的网络互联 主机A步骤: ①下载复制weave二进制执行文件(需要internet)[root@192 ...

随机推荐

  1. C#/.NET/.NET Core技术前沿周刊 | 第 6 期(2024年9.16-9.22)

    前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...

  2. Project: Kill e

    接到上级任务,今天来暗杀 \(e\) 据说杀死 \(e\) 的方式就是把他算出来,好吧,现在我们还是来算一下 考虑使用如下代数式求解 \[e\ \text{site:baidu.com} \] 虽然我 ...

  3. 使用composer创建项目时报错:Composer could not find the config file?

    使用composer创建项目时报错:Composer could not find the config file:C:\Composer ....? 一般报这个错就是composer安装的时候配置了 ...

  4. Android Systrace 基础知识 -- Why 60 fps ?

    1.正文 今天来讲一下为何我们讲到流畅度,要首先说 60 帧. 我们先来理一下基本的概念: 60 fps 的意思是说,画面每秒更新 60 次 这 60 次更新,是要均匀更新的,不是说一会快,一会慢,那 ...

  5. Solon 3.0 新特性:HttpUtils 了解一下

    Solon 3.0 引入一个叫 HttpUtils 小插件,这是一个简单的同步 HTTP 客户端,基于 URLConnection 适配(也支持切换为 OkHttp 适配).使得编写 HTTP 客户端 ...

  6. MP4 转 TXT 项目与 M3U8 下载脚本

    项目背景 在当今信息社会,视频学习已成为一种重要的知识获取方式.然而,许多用户在观看视频的过程中,效率往往低于预期.为了提升学习效率,我们决定开发一个将 MP4 视频转换为 TXT 文稿的项目.此外, ...

  7. 云原生周刊:Gateway API 1.0.0 发布 | 2023.11.6

    开源项目推荐 Kueue Kueue 是一套用于作业队列的 API 和控制器.它是作业级管理器,可决定何时允许作业启动(如创建 pod),何时停止作业(如删除活动 pod). Reloader 一个 ...

  8. Paths和Files

    Paths 类 Paths 类主要用于操作文件和目录路径.它提供了一些静态方法,用于创建java.nio.file.Path实例,代表文件系统中的路径. // 创建一个Path实例,表示当前目录下的一 ...

  9. Postman 免登录测试后端接口

    今天跟测试同学学习了下用Postman免登录测试后端接口,测试同学除了会对我们系统前端测试外,一些后端接口涉及危险操作也会使用Postman 对接口进行测试,这个时候就需要解决一个接口免登录的问题,他 ...

  10. 拯救php性能的神器webman-打包二进制

    看了看webman的官方文档,发现居然还能打包为二进制,这样太厉害了吧! 先执行这个  composer require webman/console ^1.2.24 安装这个console的包,然后 ...