docker通过运行容器制作共享tar镜像包

  • 镜像构建:
    docker commit 【option】
    -a 指明作者
    -p 暂停容器再建立镜像
    [[email protected] ~]# docker commit -p -a "vicliaoxz <[email protected]>" centos2
    sha256:ead743182b50ba021d5eee144aad229cbcf093f6796363b11e366f6117a62fab
    [[email protected] ~]# docker images
    REPOSITORY            TAG                 IMAGE ID            CREATED              SIZE
    <none>                <none>              ead743182b50        About a minute ago   302 MB
    [[email protected] ~]# docker run -it --name c-net-tools ead743182b50
    [[email protected] /]# ifconfig
    eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.17.0.4  netmask 255.255.0.0  broadcast 0.0.0.0
        inet6 fe80::42:acff:fe11:4  prefixlen 64  scopeid 0x20<link>
  • 给镜像添加标签
    docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
    [[email protected] ~]# docker tag ead743182b50(ID) vicdockerhub(用户名)/centos(基础镜像):net-tools(标签)
    [[email protected] ~]# docker images
    REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
    vicdockerhub/centos   net-tools           ead743182b50        21 minutes ago      302 MB
  • 推送镜像
    3.1.推送到docker-hub(需要注册一个dockerhub账号)
    [[email protected] ~]# docker login -u vicdockerhub
    Password:
    Login Succeeded
    [[email protected] ~]# docker push vicdockerhub/centos:net-tools
    The push refers to a repository [docker.io/vicdockerhub/centos]
  • 3.2.上传到私有仓库:
    docker tag vicdockerhub/centos:net-tools myregistry.liaoxz.xin:5000/vicdockerhub/centos:net-tools

    1. 将镜像保存为tar包
      docker ecport 导出为一个容器

      
      Usage:  docker save [OPTIONS] IMAGE [IMAGE...]
      Options:
      -o, --output string   Write to a file, instead of STDOUT

    [[email protected] ~]# docker save vicdockerhub/centos:net-tools -o centos-net-tools.tar
    [[email protected] ~]# ls
    centos-net-tools.tar

    
    
    5. 外部tar包导入镜像
    docker load
    docker load -i 指定镜像tar包
    
    [[email protected] ~]# docker load -i centos-net-tools.tar
    Loaded image: vicdockerhub/centos:net-tools
    [[email protected] ~]# docker images
    REPOSITORY                                       TAG                 IMAGE ID            CREATED             SIZE
    myregistry.liaoxz.xin:5000/vicdockerhub/centos   net-tools           ead743182b50        51 minutes ago      302 MB
    vicdockerhub/centos                              net-tools           ead743182b50        51 minutes ago      302 MB

    原文地址:http://blog.51cto.com/liaoxz/2104319

    时间: 2024-11-05 21:54:44

    docker通过运行容器制作共享tar镜像包的相关文章

    wsl2上用docker部署运行环境,mvn构建镜像找不到dockerhost

    项目构建过程参考:https://macrozheng.github.io/mall-learning/#/ 中的linux下docker构建 在docker上搭建网站服务,设置了docker.service的execStart,添加tcp//:0.0.0.0:5375之后,mvn构建一直失败,说连不上本地的5375端口. 纠结了非常久才找到解决方法,其实之前在配置registry的时候曾经配置过,只不过搞不懂这个是什么意思,没想到还有这个方法. 参考https://www.jianshu.co

    Docker 之 基于容器的镜像制作

    1  概述 镜像包含启动容器所需的文件系统和内容,可以理解为打包的文件,用于创建并启动docker容器. 镜像的生成途径有三个: 1.基于dockerfile实现,镜像制作的程序文件 2.基于容器实现,启动容器后,将新的操作制作为新镜像 3.docker hub automated builds 镜像文件采用分层构建机制,最底层为bootfs,上面为rootfs,rootfs上还可以有多层.位于最下层的镜像文件为父镜像(parent image),最底层为基础镜像(base image,root

    docker搭建本地仓库并制作自己的镜像

    原文地址https://blog.csdn.net/junmoxi/article/details/80004796 1. 搭建本地仓库1.1 下载仓库镜像1.2 启动仓库容器2. 在CentOS容器中安装JDK2.1 下载CentOS容器2.2 运行Linux容器:2.3 将JDK复制到myCentos容器中2.4 进入容器2.5 解压JDK2.6 配置环境变量2.6.1 刷新环境变量2.6.2 设置开机自动执行source2.6.3 重启容器2.7 将容器提交到镜像里3. 将新制作的镜像推送

    04 Docker 制作自定义镜像包

    制作自定义镜像包的两种方式 1.创建容器并对容器进行修改,然后打包容器为镜像 2.使用Dockerfile编排镜像 自定义镜像 1.创建一个容器 docker run -itd centos 2.进入容器进行修改配置 docker exec -it 容器id bash 停止容器,不是必须的 3.创建镜像并验证 docker commit 容器id 镜像名称:标签 4.打包镜像 docker save 镜像名称 > 包名.tar 使用 Dockerfile 编排镜像 给容器配置 yum 源 查看宿

    Docker —— 使用 Dockerfile 制作 Jdk + Tomcat 镜像

    一.准备好Jdk和Tomcat apache-tomcat-8.5.50.tar.gz jdk-8u212-linux-x64.tar.gz 注意: Jdk 和 Tomcat 记得从官网下载,否则制作出来的镜像容易出现不兼容问题. jdk1.8下载:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html tomcat8下载:https://tomcat.apache.org/downl

    CentOS7安装Docker,运行Nginx镜像、Centos镜像

    1.环境,CentOS7 Minimal 64位,Docker必须要64位的系统 2.通过yum命令直接安装,yum install docker 3.启动Docker,并将其设置为开机启动 (1)启动,systemctl start docker.service (2)开机启动,systemctl enable docker.service (3)帮助,docker --help (4)概要信息,docker info (5)镜像查看,docker images (6)容器查看,即进程查看,d

    Docker容器-构建Tomcat业务镜像

    接着上一篇文章来构建Tomcat业务镜像,上篇已经把tomcat基础镜像已经完成了.这次基于tomcat基础镜像构建实际业务镜像. 退到tomcat目录下,新建两个业务用的目录文件 [[email protected] /data/dockerfile/web/tomcat/tomcat-base]#cd .. [[email protected] /data/dockerfile/web/tomcat]#mkdir tomcat-app1 [[email protected] /data/do

    docker概述与安装及运行容器

    传统虚拟化 传统虚拟化步骤 1.安装虚拟化软件以及虚拟化的管理软件 2.创建虚拟机 3.给虚拟机安装os 4.在虚拟机内部不是应用(http.db之类的应用) 传统虚拟化的特点 1.VM与VM之间是完全隔离的,并且虚拟机必须要安装os 2.应用所运行的环境是建立在操作系统之上的 3.应用迁移非常笨重 传统虚拟化已经无法满足当前敏捷开发方式,VM的方式会导致开发环境和生产环境不一致,版本测试完成之后需要重新搭建环境. docker docker是容器的引擎工具,最主要是管理容器的生命周期,创建容器

    如何运行容器?- 每天5分钟玩转 Docker 容器技术(22)

    上一章我们学习了如何构建 Docker 镜像,并通过镜像运行容器.本章将深入讨论容器:学习容器的各种操作,容器各种状态之间如何转换,以及实现容器的底层技术. 运行容器 docker run 是启动容器的方法.在讨论 Dockerfile 时我们已经学习到,可用三种方式指定容器启动时执行的命令: CMD 指令. ENDPOINT 指令. 在 docker run 命令行中指定. 例如下面的例子: 容器启动时执行 pwd,返回的 / 是容器中的当前目录. 执行 docker ps 或 docker