阿里云部署Docker(3)----指令学习
来源:互联网 发布:2017软件行业寒冬 编辑:程序博客网 时间:2024/05/20 22:40
通过上两节的学习http://blog.csdn.net/minimicall/article/details/40119177 和http://blog.csdn.net/minimicall/article/details/40108305 相信大家已经把docker环境已经搭建完毕,这一节,简单学习docker怎么用。
Hello world
计算机的每一个新事物似乎都是从hello world开始。root@iZ28ikebrg6Z:~# docker run ubuntu:14.04 /bin/echo 'hello world'hello worldroot@iZ28ikebrg6Z:~# docker run ubuntu /bin/echo 'hello world'hello world我们之前执行过docker pull ubuntu, 所以我们从远端服务器拉取了不少ubuntu镜像,这些镜像已经存在在本地,不会再去远端服务器拉取,如果你运行的是本地没有的,docker会自动的去远端库查询和拉取。例如 :
root@iZ28ikebrg6Z:~# docker run centos /bin/echo 'hello world'Unable to find image 'centos' locallyPulling repository centos
上述ubuntu是一个镜像,作为一个容器,然后我们进一步运行容器内的APP,即/bin/echo程序。而当执行完echo指令之后,容器内的程序停止了,容器本身也就停止了。记住这个hello world 涉及到点概念,docker ,image, container ,application 。你懂了么?
An Interactive Container
一个可以交互的容器。我们输入如下命令:
root@iZ28ikebrg6Z:~# docker run -i -t ubuntu:14.04 /bin/bashroot@95d20e5442f9:/#多了两个参数,一个是 -t ,表示给我们的容器tty,终端。一个是-i 表示可以interactive,可以交互。细心看结果,上面一行还在我们的阿里云机子上iZ28ikebrg6z下一行已经进入到docker ubuntu:14.04镜像映射出的容器里面了,95d2e5442f9中。
你可以在这个bash里面执行一些操作。
root@95d20e5442f9:/# pwd/root@95d20e5442f9:/# lsbin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
如果你想退出这个bash,那么可以运行:
root@95d20e5442f9:/# exitexitroot@iZ28ikebrg6Z:~#这样即退出了bash,当然容器也就退出了。
A Daemonized Hello world
守候进程化,即后台化。执行如下命令:
root@iZ28ikebrg6Z:~# docker run -d ubuntu:14.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"d8eca97420317ae9f2fcd7655ab5c16c964d60f7bd644a8726ce473b075852d8-d 选项就是告诉docker,这个容器需要后台化。但是,为什么输出是一串看不懂的字符串,而不是每秒输出一次hello world呢?
这一长串东西叫做容器的ID,我们可以通过它使用容器。
root@iZ28ikebrg6Z:~# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESd8eca9742031 ubuntu:14.04 "/bin/sh -c 'while t 3 minutes ago Up 3 minutes mad_jones
看到了吧,我们刚刚那个容器被列出来了。最后一列是名字,什么意思,docker都是一层层的增加的,具体后面细说,你执行一条命令,对你使用的镜像是没有影响的,但是你执行了毕竟是有数据或者其他的东西发生了变化,这个时候,docker给你自动取个名字(你可以指定名字),然后通过这个名字,就像一个新的镜像一样,后面你可以保存它。
打印日志:
root@iZ28ikebrg6Z:~# docker logs mad_joneshello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello worldhello world停止任务:
root@iZ28ikebrg6Z:~# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESd8eca9742031 ubuntu:14.04 "/bin/sh -c 'while t 43 minutes ago Up 43 minutes mad_jones root@iZ28ikebrg6Z:~# docker stop mad_jonesmad_jonesroot@iZ28ikebrg6Z:~# docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESroot@iZ28ikebrg6Z:~#
好了,hello world就到次结束。后续推出更加高级的教程。
0 0
- 阿里云部署Docker(3)----指令学习
- 阿里云部署Docker(2)
- 阿里云ECS部署Docker服务
- 阿里云ubuntu16.4部署docker
- 阿里云ECS部署Docker服务
- 阿里云ECS部署Docker服务
- 阿里云部署Docker(4)----容器的使用
- 阿里云部署Docker(7)----将容器连接起来
- 阿里云部署Docker(8)----安装和使用redmine
- 阿里云部署Docker(9)----Dockerfile脚本定制镜像
- spring boot 使用docker在阿里云容器服务部署
- 阿里云 安装docker
- 阿里云Docker镜像库
- 阿里云 Docker支持
- docker阿里云加速器
- 阿里云 安装 docker
- docker阿里云注意事项
- docker 阿里云加速器
- 程序员的进步从阅读自己的老代码开始
- C++模式匹配
- Android 获取apk签名
- ZOJ 2795 Ambiguous permutations(序列的置换)
- 一些数据你得注意!!
- 阿里云部署Docker(3)----指令学习
- 跨进程调用Service(AIDL Service)
- 我在csdn的第一篇博客
- innodb next-key lock解析
- 震荡发生 4要素 俗语
- 安卓天气应用
- 第一章 Makefile概述
- solr4.10.1安装说明
- TotoiseSVN的基本使用方法