#安装docker的先决条件

运行64位CPU构架的计算机(docker目前不支持32位的cpu)

  • 运行LUFSinux3.8或者更高版本内核
  • 内核必须支持一种合适的存储驱动,例如:

    device Manager

    AUFS

    vfs

    默认存储驱动通常是devices mapper

    ...

  • 内核必须支持并开启cgroup和命名空间(namespace)功能

# 运行第一个容器

>>> sudo docker run -i -t ubuntu /bin/bash

-i  保证容器中STBIN是开启的,尽管并没有附着到容器中,

-t  则是,为创建的容器分配一个伪tty终端

若要在命令下创建一个我们能与之进行交互的容器,而不是运行后台服务的容器。则这两个参数是最基本的参数了

>>> hostname

查看容器的主机名

>>> exit

退出

# 容器命名

--name

docker run --name botoo_container  -i -t ubuntu /bin/bash

上述命令创建一个 名为botoo_container的容器;

容器的命名必须是唯一的。

#重新启动已经停止的容器

>>> sudo  docker start  botoo_container

或者

>>> sudo  docker start 容器ID

启动已经停止的容器

#附着到容器上

当容器重新启动后,可以用dockcer attach命令 ,重新附着到该容器的会话上。

>>> docker attach   容器nane

>>>  docker attach  容器ID

退出shell ,容器也停止

#创建守护式容器

除了上述的交互式运行容器,也可以创建长期运行的容器。守护式容器,没交互式会话,非常适合运行应用程序和服务。

>>> sudo docker run  --name  daemon_dave -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"

我们使用一个-d参数,docker就会将容器放到后台运行。

在命令里使用一个 while循环,该循环一直打印 hello world,直到容器停止运行;

>>> sudo  docker ps

可以看见该容器

#容器在内部都干些什么

获取守护容器的日志

我们也可以使用 -f 命令 监控docker的日志,和 tail -f 命令相似。

>>> docker  logs   --tail  10 daemon_dave

获取日志最后10行

>>> docker  logs   -ft   daemon_dave

...  .... ....

#查看容器内的进程

>>> docker top 容器名

可以看容器内所有的进程;

#在容器内部运行进程

>>> docker  exece -d daemon_dave touch /etc/new_config_file

在容器中运行后台任务

>>> docker exec -t -i daemon_dave /bin/bash

在容器内运行交互命令

#停止守护容器

>>> docker stop 容器名

>>> docker stop  容器ID

#自动重启容器

>>>   docker run  ---restart=always --name daemon_dave -d ubuntu /bin/sh -c "while  true;do echo hello world; slepp 1;done"

-- restart 设置为always ,无论容器的退出代码是什么。docker 都会自动重启该容器。

除了always ,还可以设置为 on -failure,这样,只有当容器的退出代码为非0的时候,才会自动重启。

on-failure 还接受一个重启次数参数,

--restart=on-failure:5

最多允许重启5次;

#深入容器

使用docker inspect 获取更多容器信息

#删除容器

运行中的容器是无法删除的,必须先使其stop

再删除, docker rm 容器ID

最新文章

  1. 飞流直下的精彩 -- 淘宝UWP中瀑布流列表的实现
  2. Activity Intent相关FLAG介绍
  3. Selenium WebDriver 处理table
  4. Linux Shell系列教程之(十四) Shell Select教程
  5. java.sql.SQLException: Io 异常: Connection reset
  6. maya user guider第一课,一些基本概念
  7. dede常用命令
  8. 个性CMD设置方法(转载)
  9. Android上传文件之FTP
  10. 移动端远程关闭PC端实现(一)需求设计
  11. Excel VBA ——批量工作表重命名
  12. ftp服务器的搭建
  13. WPF之让ListView中的CheckBox居中显示
  14. OpenCV 基础知识------图像创建、访问、转换
  15. 转:【Java集合源码剖析】Vector源码剖析
  16. Lucene.net(4.8.0)+PanGu分词器问题记录一:分词器Analyzer的构造和内部成员ReuseStategy
  17. C# 类型基础(上)
  18. /sbin/insserv: No such file or directory
  19. jquery中关于对象类型的判断原理
  20. JavaScript笔记 #05# 用Regex辅助生成文章目录

热门文章

  1. git命令中的--是什么意思?
  2. python正则表达式(3)--match方法
  3. Swagger 学习资料
  4. python基础语法3 整形,浮点,字符串,列表
  5. 获取浏览器名称与版本checkbrowse()
  6. [译] 在 UNIX 中,一切皆文件
  7. Bomb Enemy
  8. JavaScript基础08——DOM
  9. (尚033)Vue_案例_slot(组件间的通信4:slot)
  10. UFUN函数 UF_CURVE函数(UF_CURVE_create_line、UF_CURVE_create_arc、UF_CURVE_ask_arc_data、UF_CURVE_ask_line_data)