#安装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

第一本docker书 学习笔记(二)的更多相关文章

  1. 第一本docker书 学习笔记(一)

    Docker的核心组件: Docker客户端和服务端 Docker镜像 Registry Docker容器 # Docker客户端和服务端 docker 是一个 C/S架构程序.客户端只需要向dock ...

  2. 我的第一本docker书-阅读笔记

    花了三四天看完了我的第一本docker书,话说书写的还是挺简单易懂的.与传统的VM,VirtualBox,或者与那种内核虚拟的xen,kvm相比,docker作为一种容器的虚拟方式,以启动进程的方式来 ...

  3. 第一本Docker书读书笔记

    日常使用命令 1.停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q) 如果想要删除所有container的话再加一个指令: ...

  4. docker学习笔记二:常用命令

    docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...

  5. Docker学习笔记二(linux下安装Docker)

    Docker学习笔记二(linux下安装Docker) 1.在线安装linux Docker 这种方式首先要保证linux 环境下可以上网,当然,小编是在自己的电脑上安装了虚拟机,在虚拟机上安装了,l ...

  6. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  7. 《SQL必知必会》学习笔记二)

    <SQL必知必会>学习笔记(二) 咱们接着上一篇的内容继续.这一篇主要回顾子查询,联合查询,复制表这三类内容. 上一部分基本上都是简单的Select查询,即从单个数据库表中检索数据的单条语 ...

  8. NumPy学习笔记 二

    NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...

  9. 学习笔记(二)--->《Java 8编程官方参考教程(第9版).pdf》:第七章到九章学习笔记

    注:本文声明事项. 本博文整理者:刘军 本博文出自于: <Java8 编程官方参考教程>一书 声明:1:转载请标注出处.本文不得作为商业活动.若有违本之,则本人不负法律责任.违法者自负一切 ...

随机推荐

  1. 项目Beta冲刺(团队)--6/7

    课程名称:软件工程1916|W(福州大学) 作业要求:项目Beta冲刺 团队名称:葫芦娃队 作业目标:进行新一轮的项目冲刺,尽力完成并完善项目 团队博客 队员学号 队员昵称 博客地址 04160242 ...

  2. Linux—— 报错汇总

    前言 记录Linux相关的错误问题和解决方法 问题 tar: Error is not recoverable: exiting now [报错] tar -zxvf mysql-server_5.6 ...

  3. jmeter对接口测试入参进行MD5加密的5种方式

    在使用jmeter做测试的过程中,经常需要对请求的入参进行加密,下面列举几种常用的方法,以登录请求密码需要MD5加密为例. 虽然可以先把参数化的明文密码都先md5加密,而不是在登录前先执行加密,但是实 ...

  4. du -h

    du命令用来查看目录或文件所占用磁盘空间的大小.常用选项组合为:du -sh   一.du的功能:`du` reports the amount of disk space used by the s ...

  5. Generative Adversarial Networks overview(2)

    Libo1575899134@outlook.com Libo (原创文章,转发请注明作者) 本文章会先从Gan的简单应用示例讲起,从三个方面问题以及解决思路覆盖25篇GAN论文,第二个大部分会进一步 ...

  6. Robots 2019南京网络赛 (概率dp)

    Robots \[ Time Limit: 1000 ms \quad Memory Limit: 262144 kB \] 题意 有一个机器人要从 \(1\) 点走到 \(n\) 点,每走一步都需要 ...

  7. H5实现横向滚动的方法总结

    小程序中有横向滚动的swiper,H5中目前得手动实现. 实现方法如下: 外层需要设置: overflow: scroll;white-space: nowrap; 内层需要设置: display: ...

  8. Hibernate的批量查询——Criteria查询所有、条件、分页、统计(聚合函数)、排序

    1.查询所有的学生信息: public static void testSel() { Session session = HibernateUtils.openSession(); Transact ...

  9. 2.深入学习Servlet的ServletContext对象

    一.建立项目servlet01 在入门Servlet项目中建立一个子项目模块(此处不再赘述如何建立),补全maven项目中的java和resources文件夹,添加类HelloServlet.java ...

  10. 第09组 Alpha冲刺(3/6)

    队名:观光队 组长博客 作业博客 组员实践情况 王耀鑫 过去两天完成了哪些任务 文字/口头描述 完成服务器连接数据库部分代码 展示GitHub当日代码/文档签入记录 接下来的计划 服务器网络请求,vu ...