4永远的HelloWorld(docker run)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4永远的HelloWorld(docker run)相关的知识,希望对你有一定的参考价值。

之前已经说过在centos 6.5 以及 centos 7上如何安装docker,接下来我们可以尝试运行一个容器。在进行之前我们要明白这里所说的HelloWorld是什么,HelloWorld是docker在docker-hub上专门为docker测试提供的一个镜像,在我装完docker以后,我的docker主机就是我的centos 6.8,我需要从docker-hub上抓下来一个HelloWorld镜像,然后以这个镜像为模板,运行一个HelloWorld的容器实例,进行验证

阿里云镜像加速
为什么要有阿里云镜像加速呢?正常来讲docker拉取镜像是从docker-hub上来拉取,但是docker-hub是国外的网站,我们拉取镜像的话由于国内的限制,会很慢。所以说国内就出现了一些网络上的活雷锋,阿里云做了镜像加速,说白了就是把整个docker-hub上的镜像克隆了一份,放到了阿里云上边,大家从阿里云上边下载就可以了,这样速度会快很多。当然网络上的这种活雷锋还有很多,国内用的比较多的就是阿里云镜像加速 和 网易云加速
下边我们就以阿里云为例,看看测试运行HelloWorld的过程是怎么样的
1.注册一个属于自己的阿里云账号(可服用淘宝账号)
阿里云国内网址为:https://dev.aliyun.com/search.html
2.登录阿里云开发者平台,获得加速器的地址链接
点击【管理控制台】-【镜像加速器】,你就会获得一个你专属的【加速器地址】
注意,不同的平的操作方式可能会不同,可以参考下边的【操作文档】
技术分享图片
3.配置本机docker运行镜像加速器
centos 6.8配置如下:
[[email protected] ~]# vi /etc/sysconfig/docker
配置other_args的值为我们在阿里云上获取的镜像加速地址,,告诉docker去阿里云上找镜像,而不是去docker-hub上查找
other_args="--registry-mirror=https://rcjdfmmo.mirror.aliyuncs.com"

centos 7配置如下:
[[email protected] ~]# cd /etc/docker/
[[email protected] docker]# touch daemon.json #这个daemon.json文件可能会不存在
[[email protected] docker]# vi daemon.json
输入如下内容:
{
"registry-mirrors": ["https://rcjdfmmo.mirror.aliyuncs.com"]
}
输入的内容,可以从阿里云镜像加速器的【操作文档】中获得
4.重启docker后台服务
centos 6.8上
[[email protected] ~]# service docker restart

centos 7上
[[email protected] docker]# systemctl daemon-reload
[[email protected] docker]# systemctl restart docker

5.检查Linux下配置完成的加速器是否生效
[[email protected] ~]# ps -ef | grep docker #这个命令在centos 7里边看不到镜像加速地址
技术分享图片
我们从ps -ef | grep docker的输出结果,可以看到docker拉取镜像的位置
6.接下来我们测试运行Hello-world
centos 6.8中如下:
[[email protected] ~]# docker run hello-world
技术分享图片
输出这段提示以后,hello world 就会停止运行,容器自动终止

我们来总结一下docker run到底干了什么:
(1)你在命令行输入docker run hello-world,然后回车
(2)docker在本机中寻找hello world镜像,如果本地能找到,则以本地镜像为模板产生容器运行实例;如果本地不能找到,则去Docker Hub上查找该镜像。
(3)判断Docker Hub上能否找到镜像。如果Docker Hub上能找到该镜像,首先下载镜像到本地,然后以该镜像为模板产生容器运行实例,如果如果Docker Hub上不能找到该镜像,则返回错误信息。
技术分享图片

以上是关于4永远的HelloWorld(docker run)的主要内容,如果未能解决你的问题,请参考以下文章

docker练习简单操作

Docker Hello World

Docker基本使用 Hello World

Decker容器使用

Docker简单的使用命令

docker基本操作