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

[经验分享] (二)Docker的安装(2

[复制链接]

尚未签到

发表于 2018-5-28 13:14:05 | 显示全部楼层 |阅读模式
  Docker安装比较简单,没有太多前提条件,直接YUM就可以安装,当然你也可以选择编译安装,但是这就降低了安装包的可维护性。我们这里主要说YUM安装方式。
  Docker只能安装在RHEL6(CentOS 6)以上版本且只能是64位操作系统。我们这里以CentOS 7为例并安装Docker。同时也推荐使用CentOS 7来使用或学习Docker。
  

  检查内核版本:
uname -a
DSC0000.png

  查看发行版版本:
lsb_release -a
DSC0001.png

  检查Device Mapper:
grep device-mapper /proc/devices   DSC0002.png
  或者使用
rpm -qa device-mapper
DSC0003.png

  如果没有可以使用下面的命令进行安装(Red Hat中默认会被安装)
yum -y install device-mapper  延伸知识:什么是device-mapper?其实这个是graph diver的一种(aufs、devicemapper、vfs等)。它本身就是Linux系统内核中支持的功能,它实现了虚拟块设备,路径是/dev/mapper,我们知道在Linux的LVM中可以做卷的快照、卷的RAID等,都是用device-mapper这个框架来实现的。看下图:
DSC0004.png

  

  

  脚本安装
  运行下面的脚本,其实它会自动添加一个docker.repo源

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
DSC0005.png

  查看,你发现这里的版本号不是之前看到那个1.12这种类型,在2017年docker的版本发生了重大变化,版本从13.x升级到17.03。Dcoker每三个月发布一个稳定版,17.03、17.06以此类推。
  17.03.0.ce中的ce表示是社区版本,EE则是企业版本。
rpm -qa docker*
DSC0006.png

  

  启动Docker守护进程:
systemctl start docker.service
DSC0007.png

  可以使用下面的命令查看docker进程是否运行,Docker进程以root权限运行,用于处理普通用户无法完成的工作,比如加载文件系统。docker程序是Docker的客户端程序,同样也需要使用root来运行。

docker info
DSC0008.png

  默认的PID和SOCK套接字位置在:/var/run/下面,Docker使用docker.sock这个Unix套接字来监听本地用户请求。也就是说默认情况下只能使用本地Docker客户端或者Docker API对Dokcer进程发起请求,因为默认使用了本地UNIX套接字,而不会监听任何网络端口,你使用netstate命令就会发现,找不到docker监听的网络端口,只能找到套接字。所以要想通过远程主机也可以连接,就需要开启一个监听端口。
   DSC0009.png
  配置Docker守护进程:
  为了让远程可以连接到Docker需要开启监听端口,这里有2种方式,一个是临时生效直到Docker进程结束;另外一个是修改配置文件永久生效。
  临时生效:
docker -H tcp://IP:PORT -d &  让Docker进程在指定的IP和端口上监听,IP也可以写成0.0.0.0表示本机任何网络接口。那么客户端如果连接进来也需要使用-H来指定要连接的IP和端口。
  如果启动进程时只写TCP的,那么你的本地连接将没有(也就是没有UNIX套接字),如果同时需要,则还需要指定套接字路径,我这里就使用了默认路径,你也可以写另外的路径。
docker daemon -H IP:PORT -H unix:///var/run/docker.sock -d &
#建议使用下面的命令,这两个命令的效果相同。
dockerd -H 0.0.0.0:5555 -H unix:///var/run/docker.sock &
#dockerd命令是专门用于启动docker守护进程的,里面有很多选项可以使用。
DSC00010.png 查看监听端口和套接字

netstat -nap | grep docker   DSC00011.png 客户端远程连接方式如下:
docker -H IP:PORT COMMAND  

  永久生效:
  修改Docker守护进程的配置文件,默认是/usr/lib/systemd/system/docker.service文件,修改参数添加如下。
  含义是ExecStart的参数所设置的值将会被传递给dockerd命令用于启动守护进程。
   DSC00012.png
  重启服务,使用如下命令查看
systemctl start docker.service
ss -nap | grep docker   DSC00013.png
  

  其他命令:
  查看Docker信息
docker info  查看Docker进程是否在运行
systemctl status docker.service
DSC00014.png

  查看Docker版本
docker version
DSC00015.png

  连接Docker:

docker -H IP:PORT COMMAND
docker COMMAND  下面是查看本地有哪些镜像,2个命令效果相同,第一个命令是通过网络方式获取信息,第二个命令是通过本地套接字方式连接docker进程来获取信息。
DSC00016.png

运维网声明 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-482256-1-1.html 上篇帖子: (一)Docker技术概述 下篇帖子: docker私有仓库(认证功能)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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