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

[经验分享] Docker1

[复制链接]

尚未签到

发表于 2019-2-20 11:04:04 | 显示全部楼层 |阅读模式
标题一: Docker 简介
  Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
  1.docker容器技术是虚拟化的一种
查看进程,查看网络
  2.什么是容器:
一种虚拟化的方案。
传统的虚拟化技术,虚拟的是硬件环境
容器虚拟化是操作系统虚拟化
只能运行相同或相似内核的操作系统
依赖于Linux内核特性:Namespace和Cgroups(Control Group)
  3.容器技术的优点:
1.磁盘空间占用少:
传统虚拟化,很小的服务需要完整的操作系统和库的支持。底层架构体积过于庞大,也会占用过多的硬件资源
docker,只有要应用和相对应的库。
  4.Docker。
可以将应用程序自动部署到容器。
应用程序部署引擎,轻量的开发者环境。
快速的从开发者环境部署到测试环境然后到生产环境
  5.Dokcer实现的目标
提供简单轻量的建模方式,几分钟即可让应用程序容器化,几秒钟即可启动一个服务。
职责的逻辑分离:开饭人员只需管理容器的内容和服务,运维人员只需管理如何运营docker
快速高效的开发生命周期,以容器的形式交付,使用同一种开发环境。
面向服务的架构。一个容器之运行一个服务,所有的服务内部互联。高内聚,低耦合。
  6.docker
1.使用docker容器开发,测试,部署服务
2.创建隔离的运行环境。
3.搭建测试环境。
4.构建多用户的平台即服务(PaaS)基础设施
5.提供软件即服务(Saas)应用部署
6.高性能,超大规模的宿主机部署。
  7.docker的基本组成
docker client客户端
docker daemon守护进程
docker image 镜像
docker container 容器
docker Registry 仓库
  8.Docker依赖的Linux内核特性
Namespace命名空间--封装--隔离
操作系统:
系统资源的隔离:进程,网络,文件系统
PID(Process ID) 进程隔离
NET (Network)网络接口
IPC (InterProcess Communication)跨进程通信
MNT (Mount)挂载点
UTS (Unix Timessharing system)隔离内核版本标识

Cgroup
用来分配资源
资源限制:限制进程使用内存的大小。
优先级设定:那些进程可以优先使用cpu,内存等
资源计量:统计进程使用资源情况
资源控制:进程的挂起恢复
  9.Docker容器
文件系统隔离:每个容器有自己的root文件系统
进程隔离:每个容器都运行在自己的进程环境中
网络隔离:容器见的虚拟网络接口和IP地址都是分开的
资源隔离和分组:使用cgroup将CPU和内存之类的资源独立分给每个docker容器

~~~~
标题二: Docker 安装
  使用的环境是centos7
  安装

step 1: 安装必要的一些系统工具
  sudo yum install -y yum-utils device-mapper-persistent-data lvm2

Step 2: 添加软件源信息
  sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

Step 3: 更新并安装 Docker-CE
  sudo yum makecache fast
sudo yum -y install docker-ce

Step 4: 开启Docker服务
  sudo service docker start
systemctl start docker
  注意:
官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。****
  vim /etc/yum.repos.d/docker-ce.repo
将 [docker-ce-test] 下方的 enabled=0 修改为 enabled=1
  安装指定版本的Docker-CE:

Step 1: 查找Docker-CE的版本:
  yum list docker-ce.x86_64 --showduplicates | sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: branch, fastestmirror, langpacks
docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
Available Packages

Step2 : 安装指定版本的Docker-CE: ```
  (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
  sudo yum -y install docker-ce-[VERSION]


# 3.建立docker用户组
默认情况下,docker 命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root 用户和 docker 组的用户才可以访问 Docker 引擎的 Unix socket。出于安全考虑,一般 Linux 系统上不会直接使用 root 用户。因此,更好地做法是将需要使用 docker 的用户加入 docker 用户组。
建立 docker 组:
$ sudo groupadd docker
将当前用户加入 docker 组:
$ sudo usermod -aG docker $USER
# 4.安装完后检查安装
[root@localhost ~]# docker version
![](http://i2.运维网.com/images/blog/201811/12/c9523bd630dbf92e346c30329c4ab4b2.png"=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
测试:
[root@localhost /]# docker run hello-world
补充:
镜像加速
对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)

  {
"registry-mirrors": [
"https://registry.docker-cn.com"
]
}


之后重新启动服务。
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker



运维网声明 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-674814-1-1.html 上篇帖子: Docker基础(1)——安装Docker 下篇帖子: Docker核心技术理解(一)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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