01 2019 档案
摘要:参考https://www.cnblogs.com/CloudMan6/p/7045784.html 为了更好的理解容器的特性,本节我们将讨论容器的底层实现技术。 cgroup 和 namespace 是最重要的两种技术。cgroup 实现资源限额,namespace 实现资源隔离 cgroup 全
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7016050.html Block IO ,是另一种可以限制容器使用的资源,block IO 指的是磁盘的读写,docker 可以 设置权重、限制bps、限制iops --blkio-weight 600 --device
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/7003199.html 默认情况下,所有容器都可以平等的使用host cpu资源,没有限制 docker 可以通过 -c 或者 --cpu-shares 设置容器使用cpu的权重,如果不指定,默认为1024 与内存限额不同
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6986499.html 资源限额 一个docker host 会运行多个容器,每个容器都需要CPU、内存、IO资源。对于KVM和vmware等虚拟化技术,用户可以控制分配多少CPU、MEM资源给虚拟机。对于容器而言,Doc
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6961665.html 1、docker create 创建容器 docker create httpd 创建容器,但是不启动 docker start httpd 启动容器 docker run httpd = dock
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6952115.html 容器常用操作命令,很多命令在前面镜像章节已经使用过,这里不再演示 docker start 启动容器 docker stop 停止容器 docker restart 重启容器 docker kill
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6942370.html 容器按照用途可以分为两大类:服务类和工具类 服务类容器 以daemon的形式运行,对外提供服务,比如web server,db等。这类容器启动时候使用 docker run -d 以后台方式运行,排
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6928772.html 我们经常需要进到容器里面去做一些工作,比如查看日志、调试、启动其他进程等。 有两种进入容器的方法 attach 和 exec docker attach 使用快捷键 CTRL + P + Q 退出,
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6921132.html 之前的章节学习了如何构建Docker镜像,并通过镜像运行容器,从今天开始学习容器的各种操作,容器各种状态之间如何转换,以及实现容器的底层技术 运行容器 dokcer run 是运行容器的方法,之前我
阅读全文
摘要:1、首先创建存放日志的文件夹并开放读写权限 mkdir /var/log/jump/ chmod -R 777 /var/log/jump/ 2、将原有ssh程序修改为另外一个名字,然后创建一个执行脚本,脚本中调用原来的ssh程序,只是在调用的时候添加了之前说的tee命令 mv /usr/bin/s
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6913993.html 镜像相关命令总结 docker images 查看docker host本地镜像列表 docker history 查看镜像构建历史 docker commit 从容器创建新的镜像,不推荐 dock
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6902325.html Docker Hub 虽然方便,但还是有些限制,比如 1、需要Internet连接,上传下载速度慢 2、上传到Docker Hub上的公共镜像任何人都能访问,私有Registry需要收费 3、出于安
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6896488.html 在DockerHub上注册一个账号,这样就可以将自己构建的镜像上传到DockerHub上供别人使用了,公共Registry是免费的,也可以使用付费的私有Registry。 root@docker-l
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6885700.html 学会了镜像的构建,下面研究如何在多个Docker Host上使用镜像 1、用相同的Dockerfile 在其他host上进行构建 2、将镜像上传到公共的Registry(比如 Docker Hub)
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6875834.html RUN CMD ENTRYPOINT 这三个Dockerfile指令看上去很类似,很容易混淆。 简单的说: RUN 执行命令并创建新的镜像层,经常用于安装软件 CMD 设置容器启动后默认执行的命令机
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6864000.html Dokcerfile常见命令 FROM 指定base镜像 MAINTAINER 标记镜像的作者,可以是任意字符串 COPY 将文件从 build context 复制到镜像 COPY支持两种形式:
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6853329.html Dockerfile构建镜像的过程 1、从base镜像运行一个容器 2、执行一条指令,对容器进行修改 3、执行类似 docker commit的操作,生成一个新的镜像层 4、Docker在基于刚刚提
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6839420.html 构建centos-wget 镜像前本地没有缓存centos镜像,在构建的第一步需要dokcer pull centos镜像 root@docker-lab:~/docker# cat Dockerf
阅读全文
摘要:参考https://www.cnblogs.com/CloudMan6/p/6830067.html Dockerfile构建镜像过程分析 root@docker-lab:~/111# ls # 查看当前目录下存在Dockerfile文件 Dockerfile root@docker-lab:~/1
阅读全文