Docker的使用及镜像与容器

  1. Docker初体验

1.1镜像

1.1.1查看镜像列表

docker images

各个选项说明:

REPOSITORY:表示镜像的仓库源

TAG:镜像的标签

IMAGE ID:镜像ID

CREATED:镜像创建时间

SIZE:镜像大小

同一仓库源可以有多个TAG,代表这个仓库源的不同个版本,如 ubuntu 仓库源里,有 15.10、14.04 等多个不同的版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。所以,我们如果要使用版本为15.10的ubuntu系统镜像来运行容器时,命令如下:

docker run -t -i ubuntu:15.10 /bin/bash

1.1.2获取一个镜像

docker pull ubuntu:18.04

具体操作可参考上一章docker基础镜像下载内容。

1.1.3删除镜像

正确的做法是停止容器,删除容器,删除镜像,尽量不使用-f选项

docker rmi [-f] [IMAGE ID | REPOSITORY:TAG]

1.1.4创建镜像

方法一:从已经创建的容器中更新镜像,并且提交这个镜像

1)启动已有的容器,并进入容器

2)更新镜像源

apt-get update

3)提交容器副本

docker commit -m="has update ping" -a="sunpf" 1d260f7d0115 ubuntu:18.04_ping

参数说明:

-m: 提交的描述信息

-a: 指定镜像作者

1d260f7d0115:容器 ID

ubuntu:18.04_ping: 指定要创建的目标镜像名

4)查看当前环境镜像

docker images

5)使用新镜像来启动一个容器

docker run -t -i ubuntu:18.04_ping /bin/bash

成功启动,并能够使用ping命令

方法二:使用 Dockerfile 指令来创建一个新的镜像

  1. 创建并编辑Dockerfile文件

  1. 构建镜像

docker build -t spftest .

参数说明:

-t :指定要创建的目标镜像名,只能用小写字母

. :Dockerfile 文件所在目录,可以指定Dockerfile 的绝对路径

  1. 参考制作的镜像

docker imag

  1. 使用新的镜像来创建容器

1.2容器

1.2.1运行容器

docker容器以交互式运行

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

-i

以交互模式运行容器,通常与 -t 同时使用

-t

启动容器后,为容器分配一个命令行,通常与 -i 同时使用

--name="nginx-lb"

为容器指定一个名称

执行命令:

docker run -it ubuntu:18.04 /bin/bash

参数说明:

-i: 交互式操作

-t: 终端

ubuntu:18.04: 这是指用 ubuntu 18.04 版本镜像为基础来启动容器

/bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash

其他参数说明:

--name 指定了容器创建后的名称(使用 --rm 时不建议指定 --name,防止并发 run 时同名报错)

-v 参数挂载目录,将宿主机的文件夹挂载到容器中

--rm 表示容器运行退出后自动清除挂载卷,等价在容器退出后执行 docker rm -v,指定 --rm 参数启动容器时通常不使用 -d 参数

-w 指定容器启动后的默认工作目录,全称是 --workdir

1.2.2退出容器

执行命令:

exit

1.2.3容器操作

显示所有运行中的容器

docker ps

显示所有运行中的容器,包括未运行的容器

docker ps -a

删除容器

正确的做法是停止容器,删除容器,尽量不使用-f选项

docker rm [-f] [CONTAINER ID | NAMES ]

1.2.4容器工具安装

通过docker pull 获取的Ubuntu镜像文件,为最原始的镜像,在镜像内部没有工具,需要我们自己去安装获取,如下通过apt-get来安装ping命令

更新数据源列表

apt-get update

安装ping命令

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值