码迷,mamicode.com
首页 > 其他好文 > 详细

大型架构及配置技术Docker

时间:2018-06-28 14:40:59      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:linux安全   常用   创建时间   run   特性   程序   关闭   mis   隔离   

什么是容器

? 容器技术已经成为应用程序封装和交付的核心技术
? 容器技术的核心有以下几个内核技术组成:
– CGroups(Control Groups)-资源管理
– NameSpace-进程隔离
– SELinux安全
? 由于是在物理机上实施隔离,启动一个容器,可以像启动一个进程一样快速

什么是Docker

? Docker是完整的一套容器管理系统
? Docker提供了一组命令,让用户更加方便直接地使用容器技术,而丌需要过多关心底层内核技术

Docker特性
Docker优点
? 相比于传统的虚拟化技术,容器更加简洁高效
? 传统虚拟机需要给每个VM安装操作系统
? 容器使用的共享公共库和程序

Docker的缺点
? 容器的隔离性没有虚拟化强
? 共用Linux内核,安全性有先天缺陷
? SELinux难以驾驭
? 监控容器和容器排错是挑战

部署Docker
安装软件
安装前准备
? 需要64位操作系统
? 至少RHEL6.5以上的版本,强烈推荐RHEL7
? 关闭防火墙(不是必须)

安装Docker
? 软件包列表:
– docker-engine
– docker-engine-selinux

什么是镜像
? 在Docker中容器是基于镜像启动的
? 镜像是启动容器的核心
? 镜像采用分层设计
? 使用快照的COW技术,确保底层数据不丢失

Docker hub镜像仓库
? https://hub.docker.com
? Docker官方提供公共镜像的仓库(Registry)
[root@jacob~]#docker search rhel7
[root@jacob~]#docker search centos
[root@jacob~]#docker search nginx
[root@jacob~]#docker search mysql

镜像操作
下载、上传镜像
? 下载镜像(从镜像仓库中下载镜像)
[root@server0 ~]# docker pull rhel7
? 上传镜像(上传镜像到仓库)
[root@server0 ~]# docker push rhel7

导入、导出镜像
? 导入镜像(通过tar包文件导入镜像)
[root@server0 ~]# docker load < xx.tar
[root@server0 ~]# docker images
? 导出镜像(将本地镜像导出为tar文件)
[root@server0 ~]# docker images
[root@server0 ~]# docker save image_name > xx.tar

启动镜像
? 启动centos镜像生成一个容器
[root@server0 ~]# docker images
[root@server0 ~]# docker run -it centos bash
? 开启另一个终端(查看容器信息)
[root@server0 ~]# docker ps

镜像常用命令
命令列表
? 命令列表
– docker images //查看镜像列表
– docker history //查看镜像制作历叱
– docker inspect //查看镜像底层信息
– docker pull //下载镜像
– docker push //上传镜像
– docker rmi //删除本地镜像
– docker save //镜像另存为tar包
– docker load //使用tar包导入镜像
– docker search //搜索镜像
– docker tag //修改镜像名称和标签

docker images
? 查看镜像列表
– 镜像仓库名称
– 镜像标签
– 镜像ID
– 创建时间
– 大小
[root@jacob ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 980e0e4c79ec 8 months ago 196.7 MB

docker history
? 查看镜像历叱
– 了解镜像制作过程
– 详绅参考后面的dockerfile内容
[root@jacob ~]# docker history centos
IMAGE CREATED CREATED BY SIZE COMMENT
980e0e4c79ec 8 months ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0 B
<missing> 8 months ago /bin/sh -c #(nop) LABEL name=CentOS Base Ima 0 B
<missing> 8 months ago /bin/sh -c #(nop) ADD file:e336b45186086f7d9d 196.7 MB
<missing> 8 months ago /bin/sh -c #(nop) MAINTAINER https://github. 0 B

大型架构及配置技术Docker

标签:linux安全   常用   创建时间   run   特性   程序   关闭   mis   隔离   

原文地址:http://blog.51cto.com/13841846/2133674

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!