栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Docker技术实践 - 01

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Docker技术实践 - 01

Docker技术实践 - 01
  • Docker入门
    • 1.Docker简介
    • 2.Docker核心对象
    • 3.Docker应用架构分析
    • 4.Docker运行机制
  • Docker的安装
    • 5.准备工作
    • 6.安装Docker
        • 在线安装
        • 离线安装
  • Docker服务基本操作
    • 7.启动Docker服务
    • 8.查看Docker状态
    • 9.设置Docker开机自启
    • 10.禁用Docker开机自启
    • 11.重新启动Docker服务
    • 12.查看Docker信息
    • 13.停止Docker服务
    • 14.设置Docker镜像加速

Docker入门 1.Docker简介
  • Docker官网:https://www.docker.com/
  • Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
  • Docker诞生于 2013 年初,基于 Google 公司的 Go 语言进行实现。可以通过虚拟化方式,为应用提供可运行的容器。基于这种方式,可更快地打包、测试以及部署应用程序。
2.Docker核心对象
  • 镜像(Image)
    • Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。例如JDK镜像、Centos镜像、MySQL镜像等,可以暂时先将其理解为一个安装程序。
  • 容器(Container)
    • Docker容器可以将其理解为一个运行镜像的载体,镜像(Image)和容器(Container)的关系,就像是光盘和光驱。容器基于镜像创建、启动,然后运行镜像的中的文件。
3.Docker应用架构分析
  • Docker 是一种Client/Server架构的应用程序,参考文档
  • 其中:
    • Docker Host是我们的docker宿主机(就是安装了docker的操作系统)
    • Registry是docker拉取镜像的远程仓库,提供大量的镜像供下载,下载完成之后保存在Images中
    • Docker Daemon是docker的服务线程,处理Docker客户端命令。
    • Images 是Docker本地的镜像仓库,可以通过docker images查看镜像文件。
4.Docker运行机制
  • docker pull: 拉取指令
    • 客户端将指令发送给docker daemon
    • docker daemon 先检查本地images中有没有相关的镜像
    • 如果本地没有相关的镜像,则向镜像服务器请求,将远程镜像下载到本地
  • docker run: 执行指令
    • 检查本地是否存在指定的镜像,不存在就从公有仓库下载
    • 利用镜像创建并启动一个容器
    • 分配一个文件系(简版linux系统),并在只读的镜像层外面挂载一层可读写层
    • 从宿主机配置的网桥接口中桥接一个虚拟接口到容器中去
    • 从地址池配置一个 ip 地址给容器
    • 执行用户指定的应用程序
Docker的安装 5.准备工作
  • 首先需要准备虚拟机和CentOS7系统
6.安装Docker 在线安装
  • 安装一组工具
    	sudo yum install -y yum-utils 
    
  • 设置yum仓库地址
    	sudo yum-config-manager 
    	    --add-repo 
    	    https://download.docker.com/linux/centos/docker-ce.repo
    
    	sudo yum-config-manager 
    	     --add-repo 
    	     http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
  • 更新yum缓存
    	sudo yum makecache fast 	#yum 是包管理器
    
  • 安装新版docker
    	sudo yum install -y docker-ce docker-ce-cli containerd.io
    
离线安装
  • 下载docker离线安装包
    	https://download.docker.com/linux/static/stable/x86_64/docker-20.10.6.tgz
    
  • 下载离线安装工具,并解压
     	https://github.com/Jrohy/docker-install/
    

  • 在Linux环境下创建/root/setup/docker/目录,并将下载好的资源拷贝到此目录
    	[root@localhost docker]# pwd
    	/root/setup/docker
    	[root@localhost docker]# ls -l
    	total 68132
    	-rw-r--r--. 1 root root 69637582 Sep 29 16:23 docker-20.10.6.tgz
    	-rw-r--r--. 1 root root   114793 Sep 29 16:23 docker.bash
    	-rwxr-xr-x. 1 root root     7546 Sep 29 16:23 install.sh
    	[root@localhost docker]#
    
  • 执行安装操作
    	# 进入/root/setup/docker 文件夹
    	cd /root/setup/docker
    	
    	# 为 install.sh添加执行权限
    	chmod +x install.sh
    	
    	# 安装
    	./install.sh -f docker-20.10.6.tgz
    
    
  • 安装成功后,检查安装状态 ---- docker info命令
    	[root@localhost docker]# docker info
    	Client:
    	 Context:    default
    	 Debug Mode: false
    	
    	Server:
    	 Containers: 9
    	  Running: 3
    	  Paused: 0
    	  Stopped: 6
    	 Images: 14
    	 Server Version: 20.10.6
    	 Storage Driver: overlay2
    	  Backing Filesystem: xfs
    	  Supports d_type: true
    	  Native Overlay Diff: true
    	  userxattr: false
    	 Logging Driver: json-file
    	 Cgroup Driver: cgroupfs
    	 Cgroup Version: 1
    	 Plugins:
    	  Volume: local
    	  Network: bridge host ipvlan macvlan null overlay
    	  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
    	 Swarm: inactive
    	 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
    	 Default Runtime: runc
    	 Init Binary: docker-init
    	 containerd version: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
    	 runc version: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
    	 init version: de40ad0
    	 Security Options:
    	  seccomp
    	   Profile: default
    	 Kernel Version: 3.10.0-1160.el7.x86_64
    	 Operating System: CentOS Linux 7 (Core)
    	 OSType: linux
    	 Architecture: x86_64
    	 CPUs: 2
    	 Total Memory: 1.777GiB
    	 Name: localhost.localdomain
    	 ID: 6FGC:ARZ4:67JF:FAO2:4RHY:TUXL:AYG3:HDVJ:SW7F:XRDJ:ITS4:S46Q
    	 Docker Root Dir: /var/lib/docker
    	 Debug Mode: false
    	 Registry: https://index.docker.io/v1/
    	 Labels:
    	 Experimental: false
    	 Insecure Registries:
    	  127.0.0.0/8
    	 Registry Mirrors:
    	  https://docker.mirrors.ustc.edu.cn/
    	  http://hub-mirror.c.163.com/
    	 Live Restore Enabled: false
    	 Product License: Community Engine
    
    
Docker服务基本操作 7.启动Docker服务
	 systemctl start docker
8.查看Docker状态
	systemctl status docker

9.设置Docker开机自启
	systemctl enable docker
10.禁用Docker开机自启
	systemctl disable docker
11.重新启动Docker服务
	systemctl restart docker
12.查看Docker信息
	docker info
  • 查看docker info 中的具体信息,例如:
    	docker info | grep 'Docker Root Dir:'
    
13.停止Docker服务
	systemctl stop docker
14.设置Docker镜像加速
  • 修改配置文件 /etc/docker/daemon.json
  • 下面命令直接生成文件daemon.json
    	cat < /etc/docker/daemon.json
    	{
    	  "registry-mirrors": [
    	    "https://docker.mirrors.ustc.edu.cn",
    	    "http://hub-mirror.c.163.com"
    	  ],
    	  "max-concurrent-downloads": 10,
    	  "log-driver": "json-file",
    	  "log-level": "warn",
    	  "log-opts": {
    	    "max-size": "10m",
    	    "max-file": "3"
    	    },
    	  "data-root": "/var/lib/docker"
    	}
    	EOF
    
  • 在执行上述指令时,需要确保登录的是root用户,并且,在设置完毕之后,需要重启docker服务
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/289348.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号