Docker学习笔记

最近项目组内准备搞一个培训,大家要轮番给其他成员讲点什么。正赶上我有心钻研一下docker。秉承着以教会别人来证明自己学会的理念,对最近所学进行整理。即为笔记也作讲义。

Docker的基本概念和安装方法网上一撸一片,在这里就不一一赘述了。只需要明白镜像就像是面向对象程序设计中的“类”,而容器就是“实例”。至于仓库作用嘛,就是在用来存放镜像的。

下面整理一些docker的操作命令。

  • 获取镜像

docker pull [选项] [Docker Registry地址]<仓库名>:<标签>

  1. Docker Registry地址:地址的格式一般是   <域名/IP>[:端口号]  。默认地址是Docker Hub。
  2. 仓库名:如之前所说,这里的仓库名是两段式名称,既 <用户名>/<软件名>。对于Docker Hub,如果不给出用户名,则默认为library,也就是官方镜像。
  • 列出镜像

docker images

  • 虚悬镜像

这玩意就理解成已经失效的镜像好了,具体有那些可以用下面的命令查一下:

docker images -f dangling=true

既然失效了就可以随意删除,删除命令如下:

docker rmi $(docker images -q -f dangling=true)

  • 保存镜像

docker commit [选项] <容器ID或容器名> [<仓库名>[:<标签>]]

docker commit \

--author "Tao Wang <twang2218@gmail.com>" \

--message "修改了默认网页" \

webserver \

nginx:v2

其中--author是指定修改的作者,而--message则是记录本次修改的内容,webserver 是容器名。

这点和git版本控制相似,不过这里这些信息可以省略留空。

敲黑板:

docker commit命令除了学习之外,还有一些特殊的应用场合,比如被入侵后保存现场等。但是,不要使用docker commit定制镜像,定制行为应该使用Dockerfile来完成。

 

  • 创建容器

docker create -it --name truffle --privileged=true -v/root/host/volume:/home/docker/volume ubuntu:16.04  bash

红色部分可以改动,--name是指定容器名称,-v是数据卷操作,可以理解为将主机目录映射到容器中的某刻目录,--privileged=true 使得docker中的映射目录对物理机中的目录有可操作权限,ununtu:16.04就是启动基于的镜像。

  • 基于镜像启动容器

docker run --name truffle -v /root/host/volume:/home/docker/volume -it -d --security-opt seccomp=unconfined ubuntu:16.04 bash

红色部分可以改动,--name是指定容器名称,-v是数据卷操作,可以理解为将主机目录映射到容器中的某刻目录,ununtu:16.04就是启动基于的镜像。

  • 启动已终止容器

docker start  [容器名称]

  • 终止容器

docker stop  [容器名称]

  • 删除容器

可以使用docker rm来删除一个处于终止状态的容器。例如

$sudo docker rm trusting_newton

如果要删除一个运行中的容器,可以添加-f 参数。Docker会发送SIGKILL信号给容器。

  • 清理所有处于终止状态的容器

用docker ps -a 命令可以查看所有已经创建的包括终止状态的容器,如果数量

太多要一个个删除可能会很麻烦,用docker rm $(docker ps -a -q)可以全部清理掉。

敲黑板:

这个命令其实会试图删除所有的包括还在运行中的容器,不过就像上面提过

的docker rm默认并不会删除运行中的容器。

  • 列出全部镜像

docker images -a

  • 列出部分镜像

docker images [仓库] [-f 条件]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高晓伟_Steven

相逢即是有缘,动力源于金钱。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值