三、 启动一个容器

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

Docker基础实战教程一:入门
三、 启动一个容器


提示:以下是本篇文章正文内容,下面案例可供参考

1.任务详情

如果将Docker比作一艘轮船,那容器就是轮船上一个一个的集装箱,而镜像就是组成集装箱的基本材料。docker容器是Docker中至关重要的一部分,而这一节我们介绍如何启动一个容器。

本关任务是学习启动一个容器,要求学习者参照示例完成“创建并启动一个名为firstContainer的容器,该容器具备busybox的运行环境,并在启动时输出一个“hello world”。

2.相关知识

在拉取到一个镜像之后,也就为容器准备了运行环境。下面我们将介绍如何使用镜像启动一个容器。

启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态(stopped)的容器重新启动。

3.第一种方式:新建并启动。

docker run命令会基于指定的镜像创建一个容器并且启动它。

docker run背后的工作
Docker在后台运行的标准操作包括:

  1. 检查本地是否存在指定的镜像,不存在就从公有仓库下载启动;
  2. 利用镜像创建并启动一个容器;
  3. 分配一个文件系统,并在只读的镜像层外面挂载一层可读写层;
  4. 从宿主主机配置的网桥接口中桥接一个虚拟接口到容器中去;
  5. 从地址池配置一个ip地址给容器;
  6. 执行用户指定的启动命令;
  7. 执行完毕后容器被终止。

docker run实例一
创建并启动一个容器,容器中具有ubuntu的运行环境,输出hello docker
只需要一条命令:docker run ubuntu:14.04 echo 'hello docker',问题就解决了
docker run实例二
创建并启动一个容器,容器中具有ubuntu的运行环境,容器名为firstContainer,为容器分配一个终端,与用户进行交互。
在这里插入图片描述
其中,-i选项告诉Docker保持标准输入输出流对容器开放,-t选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上。–name为容器设置容器名。

4.第二种方式:启动一个已经终止的容器

虽然Docker容器是非常轻量的,这意味着一般情况下,我们在启动完容器并完成操作之后都会将容器删除掉。但是有些时候我们会进入之前创建的容器,而docker run每次都会创建一个新容器,显然不符合我们的需求。这种时候,可以使用docker start命令,使用容器名或容器id启动一个已经终止的容器。
假设一个名为firstContainer的容器处于终止状态,现在需要将它启动,可以这么做:执行docker start firstContainer,命令执行后,尝试启动firstContainer容器,并执行该容器的启动命令。

查看容器信息
Docker中有这样一条命令docker ps,可以查看容器的信息,包括容器ID,基础镜像,启动命令,创建时间,当前状态,端口号,容器名字。
如果不加任何参数,只执行docker ps,将会显示所有运行中的容器。
而如果docker ps –a命令,可以查看Docker环境中所有的容器,包括已经停止的容器。

5.任务要求

本关的编程任务是补全step3/startcontainer.sh文件中的内容,要求创建并启动一个容器。具体要求如下:

  • 创建并启动一个容器,容器名为firstContainer,具备busybox的运行环境。并输出hello world。

6.笔者答案

#注意如果想在右侧使用命令行模拟操作,请先输入
#service docker start
#否则将不能执行docker命令

#创建并启动一个容器,容器名为firstContainer,具备busybox的运行环境。并输出hello world
#拉取busybox最新镜像
docker pull busybox
#********** Begin *********#
docker run --name firstContainer busybox echo 'hello world'
#********** End **********#

核心代码

service docker start
docker pull busybox
docker run --name firstContainer busybox echo 'hello world'

运行截图

在这里插入图片描述

总结

Docker基础实战教程一:入门
三、 启动一个容器

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值