返回顶部
首页 > 资讯 > 精选 >Docker镜像与容器的导入导出方法
  • 320
分享到

Docker镜像与容器的导入导出方法

2023-06-29 17:06:21 320人浏览 安东尼
摘要

这篇文章主要介绍“Docker镜像与容器的导入导出方法”,在日常操作中,相信很多人在Docker镜像与容器的导入导出方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker镜像与容器的导入导出方法”的疑

这篇文章主要介绍“Docker镜像与容器的导入导出方法”,在日常操作中,相信很多人在Docker镜像与容器的导入导出方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker镜像与容器的导入导出方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

    一、前言

    随着容器技术的发展,现在很多的应用程序系统都会选择使用docker容器进行部署,但是有时候使用docker容器进行部署的时候会遇到问题,比如说我们的应用程序里面需要依赖其他第三方的镜像,如果这时候服务器是在内网不能连接外网的情况下,那么就无法部署了。基于这种情况,docker官方支持docker镜像和容器的导入和导出,我们可以在一台能够联网的机器上面编译镜像,然后导出镜像或者容器,最后把导出的镜像或者容器上传到内网服务器,然后在导入镜像或者容器,这样就可以了。

    镜像和容器的导入、导出操作主要涉及到下面的几个命令:save、load、export、import。

    演示过程中我们是在本地生成镜像或者容器,然后把镜像或者容器导出,最后上传到阿里云服务器演示导入功能。

    我们使用VS 2019创建一个ASP.net core mvc项目,添加Dockerfile文件:

    # 使用运行时镜像FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim# 设置工作目录WORKDIR /app# 把目录下的内容都复制到当前目录下COPY . .# 暴露80端口EXPOSE 80# 运行镜像入口命令和可执行文件名称ENTRYPOINT ["dotnet", "DockerDemo.dll"]

    然后发布项目。我们查看现有的docker镜像

    Docker镜像与容器的导入导出方法

    可以看到:现在只有两个.net core的镜像。我们生成镜像:

    docker build -t dockerdemo .

    如下图所示:

    Docker镜像与容器的导入导出方法

    查看生成后的镜像

    Docker镜像与容器的导入导出方法

    然后我们根据生成的镜像来运行容器,首先查看现有的容器:

    Docker镜像与容器的导入导出方法

    可以看到这时没有任何容器。我们运行容器:

    Docker镜像与容器的导入导出方法

    可以看到:容器已经运行成功了。

    二、docker镜像的导入和导出

    1、docker镜像的导出

    涉及到的命令:

    docker save [options]  images [images...]

    我们使用上面的镜像来演示镜像的导出:

    docker save -o dockerdemo.tar  dockerdemo

    如下图所示:

    Docker镜像与容器的导入导出方法

    这里导出的时候指定了导出后文件的路径,如果不指定路径,默认是当前文件夹。

    或者也可以使用下面的命令导出:

    docker save > dockerdemo.tar dockerdemo

    其中-o和>表示输出到文件,dockerdemo.tar为导出的目标文件,dockerdemo为源镜像名。

    我们查看本地是否有了导出后的文件:

    Docker镜像与容器的导入导出方法

    可以看到目录下面已经有了刚才导出的文件。

    2、docker镜像的导入

    我们首先使用XFtp把上面导出的镜像文件上传到阿里云服务器

    Docker镜像与容器的导入导出方法

    然后进入文件所在的目录

    Docker镜像与容器的导入导出方法

    我们查看阿里云服务器上面有哪些镜像:

    Docker镜像与容器的导入导出方法

    从上图中看出:现在阿里云服务器上面没有任何的镜像。

    涉及到的导入命令load

    docker load [options]

    接下来我们导入刚才上传的镜像。

    docker load -i dockerdemo.tar

    如下图所示:

    Docker镜像与容器的导入导出方法

    或者也可以使用下面的命令

    docker load < dockerdemo.tar

    其中-i(i即imput)和<表示从文件输入。上面的两个命令都会成功导入镜像以及相关元数据,包括tag信息。

    导入后查看镜像:

    Docker镜像与容器的导入导出方法

    可以看到有了我们刚才导入的镜像。导入了镜像以后就可以根据镜像运行容器,最后运行应用程序。

    三、docker容器的导入和导出

    接下来我们演示容器的导入和导出。

    1、docker容器的导出

    涉及到的命令export。

    docker export [options]  container

    我们把上面生成的容器导出:

    docker export -o D:\containers\dockerdemocontainer.tar dockerdemo

    如下图所示:

    Docker镜像与容器的导入导出方法

    其中,-o表示输出的文件,这里指定了输出的路径,如果没有指定路径,则默认生成到当前文件夹。dockerdemocontainer.tar为目标文件,dockerdemo为源容器名。

    我们查看目录下面是否生成了导出的容器:

    Docker镜像与容器的导入导出方法

    2、docker容器的导入

    我们首先把导出的容器使用XFTP上传到阿里云服务器。

    Docker镜像与容器的导入导出方法

    涉及到的导入命令import。

    docker import [options] file|URL|- [REPOSITORY[:TAG]]

    如下图所示

    Docker镜像与容器的导入导出方法

    我们导入刚才上传的容器

    docker import [options] file|URL|- [REPOSITORY[:TAG]]

    dockerdemocontainer.tar表示要导入的容器,dockerdemo:imp表示导入后的镜像名称,imp表示给导入的镜像打tag。

    如下图所示

    Docker镜像与容器的导入导出方法

    然后我们查看镜像:

    Docker镜像与容器的导入导出方法

    可以看到这时有我们刚才导入的镜像了,导入的镜像tag为imp。

    四、总结

    下面我们来总结一下镜像和容器导入导出的区别:

    • 镜像导入是一个复制的过程,容器导入是将当前容器变成一个新的镜像。

    • docker save命令保存的是镜像(image),docker export命令保存的是容器(container)。

    • export命令导出的tar文件略小于save命令导出的。

    • 因为export导出的是容器,export导出的文件在import导入时,无法保留镜像所有的历史(即每一层layer信息),不能进行回滚操作。而save是根据镜像来的,所以导入时可以完整保留下每一层layer信息。如下图所示:dockerdemo:latest是save导出load导入的,dockerdemo:imp是export导出import导入的。

    Docker镜像与容器的导入导出方法

    • docker load不能对导入的镜像重命名,而docker import导入可以为镜像指定新名称。例如,上面导入的时候指定dockerdeom:imp。

    对于是使用镜像导入导出还是使用容器导入导出该如何选择呢?有下面两点建议:

    • 若是只想备份image,使用save和load。

    • 若是在启动容器后,容器内容有变化,需要备份,则使用export和import。 

    到此,关于“Docker镜像与容器的导入导出方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

    --结束END--

    本文标题: Docker镜像与容器的导入导出方法

    本文链接: https://lsjlt.com/news/325782.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • Docker镜像与容器的导入导出方法
      这篇文章主要介绍“Docker镜像与容器的导入导出方法”,在日常操作中,相信很多人在Docker镜像与容器的导入导出方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker镜像与容器的导入导出方法”的疑...
      99+
      2023-06-29
    • Docker镜像导入导出的方法
      本篇内容主要讲解“Docker镜像导入导出的方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Docker镜像导入导出的方法”吧!docker save说明:将指定镜像保存成 tar 归档文件,...
      99+
      2023-06-29
    • Docker镜像与容器的导入导出操作实践
      目录一、前言二、docker镜像的导入和导出1、docker镜像的导出2、docker镜像的导入三、docker容器的导入和导出1、docker容器的导出2、docker容器的导入四...
      99+
      2024-04-02
    • docker镜像导入导出的两种方法
      目录一、使用 export 和 import1,查看本机的容器2,导出镜像3,导入镜像二、使用 save 和 load1,查看本机的容器2,保存镜像3,载入镜像附:两种方案的差别1,...
      99+
      2023-03-02
      docker镜像导入导出 Docker 导入导出镜像
    • Docker镜像怎么导出与导入
      本文小编为大家详细介绍“Docker镜像怎么导出与导入”,内容详细,步骤清晰,细节处理妥当,希望这篇“Docker镜像怎么导出与导入”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。如果要讲镜像保存为本地文件,可以使...
      99+
      2023-06-27
    • docker镜像导入导出的方法有哪些
      今天小编给大家分享一下docker镜像导入导出的方法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、使用 expor...
      99+
      2023-07-05
    • Docker镜像与容器的导入导出以及常用命令总结
      目录前言一、Docker 镜像和容器的导入导出1.1、镜像的导入导出1.1.1、镜像的保存1.1.2、镜像的导入1.2、容器的导入和导出1.2.1、容器的导出1.2.2、容器包的导入...
      99+
      2024-04-02
    • 如何导入和导出Docker镜像
      今天就跟大家聊聊有关如何导入和导出Docker镜像,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Docker镜像的导入导出环境如下:CentOS 7.0Docker 1.18导入导出...
      99+
      2023-06-06
    • Docker 镜像导入导出过程介绍
      docker save 说明:将指定镜像保存成 tar 归档文件,以tar和tar.gz结尾都行。 语法: docker save [OPTIONS] IMAGE [IMAGE......
      99+
      2024-04-02
    • Docker之容器导出为镜像问题
      目录Docker容器导出为镜像Docker镜像备份与迁移记录Docker容器转镜像1.默认镜像中安装wget2.导出容器再导入镜像3.执行新的镜像总结Docker容器导出为镜像 Do...
      99+
      2023-02-28
      Docker容器 Docker镜像 Docker容器导出镜像
    • Docker本地导入镜像/保存镜像/载入镜像/删除镜像的方法
      本篇内容介绍了“Docker本地导入镜像/保存镜像/载入镜像/删除镜像的方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读...
      99+
      2024-04-02
    • 导出与导入Docker的容器实现示例
      目录Docker容器的导出Docker容器的导入本文主要讲解Docker容器的导入与导出,可以用作容器快照的备份。 Docker容器的导出 1.首先使用命令查看已经创建的Docker...
      99+
      2024-04-02
    • docker离线导入镜像的方法是什么
      要实现docker离线导入镜像,可以通过以下步骤: 将要导入的镜像文件(通常是以.tar.gz或.tar格式压缩的文件)复制到目标...
      99+
      2024-04-02
    • Docker容器导出为镜像问题怎么解决
      今天小编给大家分享一下Docker容器导出为镜像问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Docker容器导...
      99+
      2023-07-05
    • docker怎么导出镜像到本地
      要导出 Docker 镜像到本地,可以使用 `docker save` 命令。以下是导出镜像到本地的步骤:1. 打开终端或命令提示符...
      99+
      2023-10-09
      docker
    • docker镜像导入失败怎么解决
      首先,您可以尝试以下几种方法来解决Docker镜像导入失败的问题: 检查Docker镜像文件是否正确并完整:确保您要导入的Doc...
      99+
      2024-03-14
      docker
    • MySQL表数据的导入与导出方法
      本篇内容介绍了“MySQL表数据的导入与导出方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! LOAD...
      99+
      2024-04-02
    • 利用Docker SDK从文件中导入镜像
      IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天编程网给大家整理了《利用Docker SDK从文...
      99+
      2024-04-04
    • Docker容器从镜像恢复的方法
      这篇文章主要介绍了Docker容器从镜像恢复的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。查看所有容器:docker container ls&nb...
      99+
      2023-06-14
    • Docker容器中如何备份、恢复、迁移、导入、导出
      这篇文章给大家分享的是有关Docker容器中如何备份、恢复、迁移、导入、导出的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议...
      99+
      2023-06-04
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作