Docker创建本地镜像实现方法解析
所谓的容器实际上是在父镜像的基础上创建了一个可读写的文件层级,所有的修改操作都在这个文件层级上进行,而父镜像并未受影响,如果读者需要根据这种修改创建一个新的本地镜像,有两种不同的方式,本文先来看第一种方式:commit。
创建容器
首先,根据本地镜像运行一个容器,如下:

命令解释:
- 首先执行docker images命令,查看本地镜像。
- 根据本地镜像中的nginx镜像,创建一个名为nginx的容器,并启动。
- 将宿主机中一个名为index.html的文件拷贝到容器中。
- 访问容器,发现改变已经生效。
- 接下来再重新创建一个容器,名为nginx2.
- 访问nginx2,发现nginx2中默认的页面还是nginx的默认页面,并未发生改变。
创建本地镜像
接下来,根据刚刚创建的第一个容器,创建一个本地镜像,如下:

命令解释:
- 参数-m是对创建的该镜像的一个简单描述。
- --author表示该镜像的作者。
- ce1fe32739402表示创建镜像所依据的容器的id。
- sang/nginx则表示仓库名,sang是名称空间,nginx是镜像名。
- v1表示仓库的tag。
- 创建完成后,通过docker images命令就可以查看到刚刚创建的镜像。
- 通过刚刚创建的镜像运行一个容器,访问该容器,发现nginx默认的首页已经发生改变。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
创建支持SSH服务的Docker镜像的方法
摘要:通常Linux系统管理员通过SSH服务来管理OS,但Docker的很多镜像是不带SSH服务的,可以通过attach(遇到假死的现象)或者exec(目前测试ok)的方法进入容器来管理,但是这些命令都无法解决远程管理容器的问题,因此,当需要远程登陆到容器内进行一些操作的时候,就需要SSH的支持了.本文记录如何使用docker commit创建一个带有SSH服务的ubuntu镜像. (1) 首先以交互的方式运行我们本地的ubuntu容器 docker run -it ubuntu:14.04 /
-
Docker镜像创建的方法
1:基于已有镜像创建 基于已有景象创建主要使用docker commit 命令.实质就是把一个容器里面运行程序以及程序的运行环境打包起来生成新的镜像 命令格式:docker commit [选项] 容器ID/名称 仓库名称:[标签] 常用命令选项: -m:说明信息 -a:作者信息 -p:生成过程中停止容器的运行 例: 首先启动一个镜像,在容器里修改,然后将修改的镜像生成新的镜像,需要记住id号 [root@xyue ~] docker run -d httpd /bin/bash 5c9edd4
-
Docker利用busybox创建基础镜像(base image)
Docker镜像的首行从FROM alpine之类的镜像开始,但是最初的基础镜像是如何创建的,本文使用一个busybox创建一个基础镜像,相信在此过程中会对docker一些相关的概念有进一步的理解. 什么是基础镜像(base image) 简单来说,基础镜像就是没有From或者FROM scratch开头的Dockerfile所构建出来的镜像.比如alpine,这个很小的linux镜像目前只有4M左右 [root@kong ~]# docker images |grep alpine docke
-
docker官方镜像下载及使用Dockerfile创建镜像的方法
1.登陆docker hut官方网站:https://hub.docker.com/ 2.search centos 3.docker pull centos:7.2.1511 4.创建Dockerfile文件: [root@vmhost centos7.2]# cat Dockerfile [plain] view plain copy FROM centos:7.2.1511 MAINTAINER wanghongwei(wanghongwei@4paradigm.com) RUN yum
-
docker之创建MariaDB镜像的方法
一.基于commit命令方式创建 docker的安装 [root@test01 ~]# yum install docker [root@test01 ~]# systemctl enable docker [root@test01 ~]# systemctl start docker 下载本地镜像 [root@test01 ~]# docker pull centos:7.4.1708 [root@test01 ~]# docker images REPOSITORY TAG IMAGE ID
-
基于alpine用dockerfile创建的tomcat镜像的实现
1.下载alpine镜像 [root@docker43 ~]# docker pull alpine Using default tag: latest Trying to pull repository docker.io/library/alpine ... latest: Pulling from docker.io/library/alpine 4fe2ade4980c: Pull complete Digest: sha256:621c2f39f8133acb8e64023a94dbd
-
docker创建私有镜像仓库搭建教程
我的环境相关设置如下 环境:centos7 IP地址:10.211.55.30 dockere版本:1.10.3 镜像仓库:v2 首先在10.211.55.30机器上下载registry镜像 $ docker pull registry 也可以进行镜像导入的方法进行离线的安装.可以去我的网盘中下载:https://pan.baidu.com/s/1jHZlz2u 然后进入Docker中进行导入 $ docker load -i registry.tar 下载完之后我们通过该镜像启动一个容器 $
-
详解docker中Dockerfile指令创建镜像
写在前面: 继续docker的学习,昨天用docker成功跑了tomcat,但是在centos中镜像跑的容器手动装jdk和tomcat,今天学习用Dockerfile创建镜像,并在上面搭建java环境,跑一个spring boot小项目. Dockerfile: Dockerfile由一行行命令语句组成,并且支持用"#"开头作为注释,一般的,Dockerfile分为四部分:基础镜像信息,维护者信息,镜像操作指令和容器启动时执行的指令. Dockerfile的书写规则及指令使用方法 Do
-
docker创建redis镜像的方法
本文介绍了docker创建redis镜像的方法,分享给大家,具体如下: 直接pull redis 镜像 创建redis的镜像有几种方式,可以直接从仓库中拉取. 首先说说docker的生命周期 1.docker的创建方式,有两种方式: 1)可以直接run ,跳过上面的步骤.举个栗子: 在构建镜像,要提供访问的端口,-p为端口映射的 1.创建并启动,设置端口映射 docker run -p 127.0.0.1:6379:6379 redis docker run 备注:docker run命令:重新
-
基于alpine用dockerfile创建的爬虫Scrapy镜像的实现
一.下载alpine镜像 [root@DockerBrian ~]# docker pull alpine Using default tag: latest Trying to pull repository docker.io/library/alpine ... latest: Pulling from docker.io/library/alpine 4fe2ade4980c: Pull complete Digest: sha256:621c2f39f8133acb8e64023a94
随机推荐
- 浅谈JS正则表达式的RegExp对象和括号的使用
- JS延迟加载(setTimeout) JS最后加载
- js利用正则表达式检验输入内容是否为网址
- java反射_改变private中的变量及方法的简单实例
- ASP.NET 文件压缩解压类(C#)
- php中通过Ajax如何实现异步文件上传的代码实例
- PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )
- php 用checkbox一次性删除多条记录的方法
- 详细介绍Python的鸭子类型
- Android 使用XML做动画UI的深入解析
- JavaScript实现简单的双色球(实例讲解)
- PHP图片处理类 phpThumb参数用法介绍
- Vim中的几种文件备份方法总结
- 分页存储过程(用存储过程实现数据库的分页代码)
- java整数(秒数)转换为时分秒格式的示例
- java 单播、广播、组播详解及实例代码
- JavaScript脚本语言在网页中的简单应用
- Android实现网易新闻客户端侧滑菜单(2)
- php实现mysql事务处理的方法
- C#使用smtp发送带附件的邮件实现方法
