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

[经验分享] docker简介与安装配置

[复制链接]

尚未签到

发表于 2019-2-20 09:58:42 | 显示全部楼层 |阅读模式

  • 简介
  • docker架构组件
  • 安装配置
  • 配置参数
  • 启动服务


  •   简介

    • docker的官方概念:2013, GO语言开发, Apache 2.0, dotCloud研发公司
      开发人员和系统管理员可以使用docker平台去开发、部署、运行应用。使用Linux容器来部署应用程序称为集装箱化。容器并不是什么新技术,但可以简化部署应用。
    • 容器化不断受捧原因如下:
      Flexible: Even the most complex applications can be containerized.
      Lightweight: Containers leverage and share the host kernel.
      Interchangeable: You can deploy updates and upgrades on-the-fly.
      Portable: You can build locally, deploy to the cloud, and run anywhere.
      Scalable: You can increase and automatically distribute container replicas.
      Stackable: You can stack services vertically and on-the-fly.               
      Docker的特性:
      标准化:
      保证一致的运行环境
      弹性伸缩,快速扩容
      方便迁移
      持续集成、持续交付与持续部署
      高性能:不需要进行硬件虚拟以及运行完整的操作系统
      轻量级:快速启动
      隔离性:进程隔离
    • docker与VM的区别:
      两者的对比图:



  •   docker架构组件

    •   docker架构
      c/s架构,Docker客户端与Docker守护进程通信,Docker守护进程负责构建,运行和分发Docker容器。Docker客户端和守护进程可以在同一个系统上运行,也可以将Docker客户端连接到远程Docker守护进程。Docker客户端和守护进程使用REST API通过unix套接字或网络接口进行通信。


    • The Docker daemon
      docker守护进程(dockerd)监听docker API请求并管理docker对象,例如:images、container、network、和volumes。dockerd还可以与别的进程通信管理docker服务。
    •   The Docker client
      docker客户端是我们与Docker交互的主要方法。例如使用docker run命令,客户端发送命令到dockerd运行命令,客户端可以跟多个服务进程通信。

    •   Docker registries
      存储Docker镜像仓库,公共仓库有Docker Hub,Docker Cloud ,默认配置从Docker Hub查找镜像,你也可以运行你的私有仓库。Docker数据中心包含Docker信任仓库。当使用docker pull或者docker run命令时,从你配置的仓库拉取需要的镜像。当使用docker push命令时,镜像推送至你配置的仓库。

    •   IMAGES
      镜像是一个只读模板 ,带有创建docker容器的说明。一般来说,镜像会基于另外的一些基础镜像构建并加上一些额外的自定义功能。比如你可以构建一个基于Ubuntu的镜像,然后在这个基础镜像上面安装一个Apache应用,这样就可以构建成属于我们自己的镜像了。你也可以创建你自己的镜像或者仓库中别人制作好的镜像。构建镜像,创建Dockerfile文件,
      在Dockerfile的每条指令在镜像创建一层,当文件更改并重新构建镜像,更改的层被重建。 相比虚拟化技术,这种创作的镜像轻量化、更小、更快。

    • CONTAINERS
      容器是镜像运行的实例。可以使用Docker API或CLI 去 create, start, stop, move, or delete 一个容器。容器可以连接至一个或者多个网络,连接存储,甚至基于当前状态构建新的镜像。容器的实质是进程,但与直接在宿主机执行的进程不同,容器进行运行于属于自己独立的命名空间。因此容器可以拥有自己的root文件系统、自己的网络配置、自己的进程空间,甚至自己的用户id空间。容器内的进程是运行在一个隔离的环境里,使用起来,就好像在一个独立于宿主的系统下操作一样。这种特性使得容器封装的应用比直接在宿主机运行更加便捷。


  • 安装配置
    docker版本介绍:
    docker-io:docker早期版本,支持到1.13,在centos 6.x系统上只能使用docker-io
    docker-ce:社区docker发行版本
    docker-ee:docker商业版本
    安装:阿里镜像源docker-ce配置

# 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
# 注意:
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。
# 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]

  • 配置参数

    • unit file:/usr/lib/systemd/system/docker.service
    • 配置文件:/etc/docker/daemon.json,默认文件需自己创建,json格式


[root@xt ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com"], #镜像加速器
"insecure-registries":[],#仓库http访问,默认启用安全模式
"log-driver":"journald" #日志引擎配置
}


  • 启动服务

    • systemctl start docker.service
    • systemctl [enable | status ]docker

  参考文档:
阿里云镜像:https://yq.aliyun.com/articles/110806
docker官方文档:https://docs.docker.com/engine/docker-overview/#control-groups




运维网声明 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-674730-1-1.html 上篇帖子: docker学习总结四 下篇帖子: Docker 入门
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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