第一本docker书 学习笔记(二)
#安装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书 学习笔记(二)的更多相关文章
- 第一本docker书 学习笔记(一)
Docker的核心组件: Docker客户端和服务端 Docker镜像 Registry Docker容器 # Docker客户端和服务端 docker 是一个 C/S架构程序.客户端只需要向dock ...
- 我的第一本docker书-阅读笔记
花了三四天看完了我的第一本docker书,话说书写的还是挺简单易懂的.与传统的VM,VirtualBox,或者与那种内核虚拟的xen,kvm相比,docker作为一种容器的虚拟方式,以启动进程的方式来 ...
- 第一本Docker书读书笔记
日常使用命令 1.停止所有的container,这样才能够删除其中的images: docker stop $(docker ps -a -q) 如果想要删除所有container的话再加一个指令: ...
- docker学习笔记二:常用命令
docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...
- Docker学习笔记二(linux下安装Docker)
Docker学习笔记二(linux下安装Docker) 1.在线安装linux Docker 这种方式首先要保证linux 环境下可以上网,当然,小编是在自己的电脑上安装了虚拟机,在虚拟机上安装了,l ...
- [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计
源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...
- 《SQL必知必会》学习笔记二)
<SQL必知必会>学习笔记(二) 咱们接着上一篇的内容继续.这一篇主要回顾子查询,联合查询,复制表这三类内容. 上一部分基本上都是简单的Select查询,即从单个数据库表中检索数据的单条语 ...
- NumPy学习笔记 二
NumPy学习笔记 二 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.<数学分 ...
- 学习笔记(二)--->《Java 8编程官方参考教程(第9版).pdf》:第七章到九章学习笔记
注:本文声明事项. 本博文整理者:刘军 本博文出自于: <Java8 编程官方参考教程>一书 声明:1:转载请标注出处.本文不得作为商业活动.若有违本之,则本人不负法律责任.违法者自负一切 ...
随机推荐
- 用Python打造了一个渗透测试暴力探测器
资源探测的作用 通过资源探测,我们可以在目标系统中发现文件.目录.活动.服务还有相关的参数,为下一步的行动提供信息参考. 一个开源的模糊测试数据库 https://github.com/fuzzdb- ...
- MySQL中Count函数的参数该传入什么样的值?
MySQL中Count函数的参数该传入什么样的值? 查询用户表中总记录 用户表中信息如下: 1.SELECT COUNT(*) FROM USER 结果为:3条 2. SELECT COUNT(us ...
- docker 服务无法启动
重装以后仍然不行,dockerd可以运行,但是systemctl start docker.service不行,后来在编辑一个文件时,提示没有空间可以保存,结果一查,发现服务器空间基本占满了, 通过 ...
- Python 鼠标键盘操作
1.鼠标操作 from pymouse import PyMouse myMouse = PyMouse() #获取当前的鼠标位置 # nowP = myMouse.position() # prin ...
- 使用Maven创建一个普通java项目
1.创建项目: 使用Maven目的是是我们能够轻松的管理各种别人写过的包 创建好之后,我们去找我们所需要的包:在mvnrepository.com中找自己所需要的包 例子: 最后将依赖写入pom.xm ...
- 4-网页,网站,微信公众号基础入门(配置网站--下载安装PHP)
https://www.cnblogs.com/yangfengwu/p/10979101.html 这一节咱看一下如何在原先的基础上实现网站 首先去下载 PHP https://windows.ph ...
- ps制作马赛克图片
- MSSQL复制表数据及表结构
目标表存在: insert into 目标表 select * from 原表 目标表不存在: select * into 目标表 from 原表 复制表结构 select * into 目标表 fr ...
- Linux防火墙配置方法
1)查看防火墙状态 查看防火墙状态: /etc/init.d/iptables status 暂时关闭防火墙: /etc/init.d/iptables stop 重启防火墙: /etc/init.d ...
- adb 常用命令一
1.install 和uninstall adb -s 设备号 install 安装包路径 adb uninstall package名 2.pull 和push: adb pull /sdcar ...