目前通过yum源安装的docker版本都不是最新的,所以使用docker拉取某些仓库会报错,本文提供一个安装最新版docker的方式!

安装新版本的docker
  升级前查看docker版本

dockerversion.png

  发现此版本不是较为新的版本

查找主机上关于Docker的软件包

rpm -qa | grep docker – – 列出包含docker字段的软件的信息

使用yum remove卸载软件

yum remove docker* -y

使用curl升级到最新版

curl -fsSL https://get.docker.com/ | sh

这时就已经成功安装docker至最新版了

备份container

  首先,为了备份Docker中的容器,我们会想看看我们想要备份的容器列表。要达成该目的,我们需要在我们运行着Docker引擎,并已创建了容器的Linux机器中运行 docker ps 命令。

docker ps命令列出当前在docker中运行的容器,找到我们需要备份的容器

再使用docker commit 生成 该容器的一个快照

docker commit -p 30b8f18f20b4 container-backup

使用docker commit后会生成一个image文件,我们可以通过docker images查看。

  正如我们所看见的,上面做的快照已经作为Docker镜像保存了。现在,为了备份该快照,我们有两个选择,一个是我们可以登录进Docker注册中心,并推送该镜像;另一个是我们可以将Docker镜像打包成tar包备份,以供今后使用。

备份方式

  1、如果需要保存至docker注册中心,也就是我们所说的dockerhub;使用docker login登录,此处我们只做备份就不需要登录注册中心了。
此处也附上docker注册中心的操作流程

docker login   //登录注册中心
docker tag a25ddfec4d2a yssh/container-backup:test 
//yssh是docker账号 container-backup是仓库名 (repository) test是标签(tag)

docker push yssh/container-backup

  2、如果我们不想备份到docker注册中心,而是想要将此镜像保存在本地机器中,以供日后使用,那么我们可以将其作为tar包备份。要完成该操作,我们需要运行以下 docker save 命令。

docker save -o ~/container-backup.tar container-backup

恢复容器
1、使用docker pull恢复容器
我们成功备份了我们的Docker容器后,现在我们来恢复这些制作了Docker镜像快照的容器。如果我们已经在注册中心推送了这些Docker镜像,那么我们仅仅需要把那个Docker镜像拖回并直接运行即可。

docker pull yssh/container-backup:test

2、本地恢复
  我们将这些Docker镜像作为tar包文件备份到了本地,那么我们只要使用 docker load 命令,后面加上tar包的备份路径,就可以加载该Docker镜像了。

docker load -i ~/container-backup.tar

已经恢复的container会以images的形式存在,输入docker images查看恢复的container即可。

接下来就是启动容器了

docker run -d -p 80:80 container-backup
//后台启动容器,并将容器80端口映射为物理80端口

到此就是docker版本升级以及container的备份与恢复的完整流程了!

docker容器的备份、恢复和迁移

Last modification:June 30th, 2023 at 11:02 am