Docker 实战一:知识点总结
Docker技术概述
Docker是一个虚拟化平台,基于 Google 公司的 Go 语言进行实现。可以通过虚拟化方式,为应用提供可运行的容器。基于这种方式,可更快地打包、测试以及部署应用程序。
Docker核心对象
镜像 (Image) 和容器 (Container) ,容器为运行镜像的载体,类似于光盘和光驱的关系。
Docker应用架构分析
Docker 是一种Client/Server架构的应用程序,架构图参考https://docs.docker.com/get-started/overview/
Docker Host: docker宿主机,即安装了docker的操作系统(项目里的CentOS7964)。
Registry: docker拉取镜像的远程仓库,提供大量镜像下载,下载后保存在images中。
Docker Daemon: 是docker的服务线程,处理Docker客户端命令。
Images: 是Docker本地的镜像仓库,可以通过docker images查看镜像文件。
Docker运行机制
docker pull(拉取):
1. 客户端发送指令给docker daemon。
2. Docker daemon 先检查本地images中是否有相关镜像。
3. 如果本地没有相关镜像,则向镜像服务器请求,将镜像下载到本地。
docker run(运行):
1. 检查本地是否存在指定的镜像,不存在就从公有仓库下载。
2. 利用镜像创建并启动一个容器。
3. 分配个文件系统,并在制度的镜像层外面挂载一层可读写层。
4. 从宿主机配置的网桥接口中桥接一个虚拟接口到容器中去。
5. 从地址池配置一个ip地址给容器。
6. 执行用户制定的应用程序。
Docker实战二:技术实战流程
虚拟机部署操作
- 准备CentOS7964,课前资料里有。
- 在虚拟机VMware中打开CentOS7964。
- 克隆CentOS,选择链接克隆(浅克隆省空间),命名为CentOS7964-docker。
- 打开虚拟机,用户名密码默认root。
- 打开终端检查网络指令:ifconfig,查出ip地址。
- 通过MobaXterm远程链接虚拟机系统,注意ip地址要与上面一致。
- 显示正常并成功进入系统即为成功。
Docker安装相关指令
卸载docker:
sudo yum remove docker-ce \
docker-ce-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
若安装过Docker可以通过此方式删除Docker的所有文件,若第一次安装则无需执行。
在线安装Docker(确保网络条件可以):
1.安装yum工具:
sudo yum install -y yum-utils
2.设置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
3.更新yum缓存:
sudo yum makecache fast #yum 是包管理器
4.安装新版docker:
sudo yum install -y docker-ce docker-ce-cli containerd.io
离线安装Docker(网络欠佳推荐):
- 下载docker离线包,在docker官网上下载离线安装包:
https://download.docker.com/linux/static/stable/x86_64/docker-20.10.6.tgz - 也可以从课前资料中获取docker离线包,或者在docker官网下载指定版本。
- 下载离线安装工具,并解压。
https://github.com/Jrohy/docker-install/ - 将下载好的资源放在一个目录,创建/root/setup/docker目录(利用MobaXterm)。
- 确认好文件一共有三个,bash文件和sh文件还有docker的tgz文件。
下面执行安装操作:
- 进入docker资源所在目标文件夹:
cd /root/setup/docker
- 为install.sh添加执行权限:
chmod +x install.sh
- 安装docker:
./install.sh -f docker-20.10.6.tgz
Docker服务基本操作(手动练习):
- 启动docker服务:
systemctl start docker
- 查看Docker状态(查看是否启动,是否是运行状态):
systemctl status docker
若Active属性为active(running)则表示docker正在运行。 - 设置Docker开机自启:
systemctl enable docker
- 禁用Docker开机自启:
systemctl disable docker
- 重新启动Docker服务:
systemctl restart docker
- 查看Docker信息:
docker info
- 查看docker info 中具体key的信息&#