docker学习笔记1----镜像(参照《docker从入门到实践》)

Docker

简单梳理:

1.基本组成:镜像(images),容器(container),仓库(repository)
2.镜像:只读,可以用来创建容器,每个镜像有不同的tag(标签)。
3.容器:可以看作是一个简易的linux运行系统,容器创建后在image上增加一个可写层。
3.仓库:集中放镜像的场所,分为private(私有)和public(公开),最大的public repository 是Docker Hub,国内的是Docker pool,可以通过push把镜像上传到repository,等到使用时pull下来(类似于Github)。

详细介绍:

一·镜像:
1.拉取镜像:

sudo docker pull +镜像
此时是从官方的registry下载的,如果要从其他的仓库下载,需要制动完整的仓库注册服务器的地址

2.列出镜像

sudo docker images
可以看到来自于哪个仓库(repository),镜像的ID(是唯一的),镜像的标记TAG(版本),创建时间,镜像大小
在这里插入图片描述
(上述的latest是没有指定具体的标签,默认的信息)

3.修改镜像

i.先使用下载的镜像启动容器(先从dockerhub自行下载镜像training/sinatra)
sudo docker run -t -i training/sinatra /bin/bash
此时需要把镜像的id记下来
ii.修改镜像(看个人对镜像如何修改)
在这里我们是向镜像中添加两个json和gem两个应用
gem install json
结束后用exit来退出
iii.提交镜像
使用docker commit指令来提交更新的副本
sudo docker commit -m +提交的说明信息(added json gem)-a +指定更新的用户信息 +创建镜像的容器的ID +目标镜像的repository名和tag信息
创建成功后会返回这个镜像的信息
iv.查看镜像

4.利用Dockerfile创建镜像

上述提到的docker commit适合扩展一个镜像,不适合团队分享,这个时候我们可以使用docker build来创建一个新的镜像

i.创建目录和一个Dockerfile
``
mkdir sinatra

cd sinatra

touch Dockerfile

``
在这里插入图片描述

ii.编写镜像
Docker中的每一条指令都创造镜像的一层
Dockerfile的基本语法是

  • 使用#来注释
  • FROM告诉Docker以哪个镜像作为基础
  • MAINTAINER是维护者的信息
  • RUN开头的指令在创建中运行,(就是linux下的那些指令)
    在这里插入图片描述

然后使用docker build指令
sudo docker build -t="+tag内容" +Dockerfile所在的路径(当前目录)

5.修改标签

sudo dockr tag +id +"tag的内容"

6.上传镜像

sudo docker push +镜像

7.从本地文件系统导入

使用openvz模板创建

8.存出镜像

导出镜像到本地
sudo docker save -o +文件.tar +镜像

9.载入镜像(将导入y信息)

sudo docker load --input +文件.tar
或者
sudo docker load < +文件.tar

10.移除镜像

i.先移除容器
sudo docker rm +容器
ii.再移除镜像
sudo docker rmi +images

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值