设为首页 收藏本站
查看: 913|回复: 0

[经验分享] Docker架构、镜像及容器

[复制链接]

尚未签到

发表于 2019-2-21 08:36:36 | 显示全部楼层 |阅读模式
Docker概述
  Docker是在Linux容器里运行应用的开源工具,是一种轻量级的虚拟机。Docker的logo设计为蓝色鲸鱼,拖着许多集装箱。
鲸鱼可以看作为宿主机,而集装箱可以理解为相互隔离的容器,每个集装箱中都包含自己的应用程序。通过对应用组件的
封装、发布、部署、运行等生命周期的管理,达到应用组件级别的“一次封装,到处运行”的目的。这里的组件,既可以是
一个应用,也可以是一套服务,甚至是一个完整的操作系统。

Docker的核心概念及安装

镜像(Image)
  Docker的镜像是创建容器的基础,类似虚拟机的快照,可以理解为是一个面向Docker容器引擎的只读模板。Docker提供了
简单的机制来创建和更新现有的镜像,用于也可以在网上下载已经做好的应用来直接使用。

容器(Container)
  Docker的容器是从镜像创建的运行实例,它可以被启动、停止和删除。所创建的每一个容器都是相互隔离、互不相见的,
可以保证平台的安全性。还可以把容器看作是一个简易版的Linux环境,Docker利用容器来运行和隔离应用。

仓库(Repository)
  Docker仓库是用来集中保存镜像的地方,当创建了自己的镜像之后,可以使用push命令将它上传到公共仓库(public)
或者私有仓库(private),这样一来当下次要在另一台机器上使用这个镜像的时候,只需要从仓库pull下来就可以了。

安装Docker
  Docker支持在主流的操作系统平台上使用,包括Windows系统、Linux系统、以及MacOS系统等。目前最新的Redhat、CentOS
以及Ubuntu系统官当软件源中都已经默认自带了Docker包,可直接安装使用,也可以用Docker自己的YUM源进行配置。

1、仓库配置

cd /etc/yum.repos.d/
vim docker.repo
[docker]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg


2、安装Docker

yum install docker-engine -y
安装完成后启动Docker并设置为开机自动启动

systemctl start docker.service       //启动服务
systemctl enable docker.service       //实现开机自动启
3、查看版本信息

docker version


Docker镜像操作

1、搜索镜像
  Docker运行容器前需要本地存在对应的镜像,如果不存在本地镜像Docker就会尝试从默认镜像仓库http://hub.docker.com
下载,在使用下载镜像前,可以使用docker search命令,搜索远端官方仓库中的共享镜像。

docker search cobbler


2、获取镜像
  搜索到符合需求的镜像,可以使用docker pull命令从网络下载镜像到本地使用
  命令格式:docker pull 仓库名称:[标签]

docker pull jasonlix/docker-cobbler


3、查看镜像信息

用户可以使用docker images命令查看下载到本地的所有镜像。
  命令语法:docker images 仓库名称:[标签]

docker images


REPOSITORY ---镜像属于的仓库
TAG ---镜像的标签信息,标记同一个仓库中不同镜像
IMAGE ID ---镜像的唯一ID号,唯一标识了该镜像
CREATED ---镜像创建时间
SIZE ---镜像大小
还可以根据镜像的唯一标识ID号,获取镜像详细信息。

docker inspect 2211e1f06c4e


使用docker tag命令来为本地的镜像定义别名。
  命令格式:docker tag 镜像名称:[标签] 新名称:[新标签]

docker tag jasonlix/docker-cobbler cobbler


4、删除镜像

docker rmi cobbler
5、存出和载入镜像

存出镜像
  命令格式:docker save -o 存储文件名 存储的镜像

docker save -o cobbler jasonlix/docker-cobbler
载入镜像
  命令格式:docker load < 存出的镜像文件

docker load < cobbler
Docker容器创建

1、容器的创建与启动
  命令格式:docker create [选项] 镜像 运行的程序

-i:让容器的输入保持打开
-t:让Docker分配一个伪终端
docker create -it jasonlix/docker-cobbler /bin/bash      //产生一串序列号
docker ps -a       //查看容器中所有进程


docker start a2c2df6c8246       //启动容器


docker run jasonlix/docker-cobbler /usr/bin/bash -c ls /          //查看镜像根目录


docker run -d jasonlix/docker-cobbler /usr/bin/bash -c "while true;do echo htllo;done"       //一直保持在启动
docker ps -a            //你要进入的序列号的状态Up About a minute 或者Up 1 second
docker exec -it 1c0b830793a7 /bin/bash          //进入到容器中shell环境中前提是保持开启状态 exit退出


2、容器的终止

docker stop a2c2df6c8246
3、容器的删除

docker rm a2c2df6c8246
Docker资源控制

1、限制CPU使用速率
  在docker中可以通过--cpu-quota选项来限制cpu使用率,cpu的百分比是以1000为单位的

docker run --cpu-quota 20000 centos(容器名)       //cpu的使用率限定为20%
2、按比例分享cpu

docker run --cpu-shares 1024 容器A
docker run --cpu-shares 1024 容器B
docker run --cpu-shares 2048 容器C
3、限制CPU内核使用

docker run --cpuset-cpus 0,1,2,3 容器名
4、对内存使用限制

docker run -m 512m 容器名        //限制容器的内存为512m
5、对blkio的限制

docker run --device-write-bps /dev/sda1:1mb 容器名        //限制容器的/dev/sda1的写入ipos为1MB



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-675108-1-1.html 上篇帖子: docker 加速器 下篇帖子: Docker(二)容器操作容器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表