目录
1、查看内核(Docker 要求 CentOS 系统的内核版本高于 3.10)
2、使用 root 权限登录 Centos。确保 yum 包更新到最新
4、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
2、在/etc/docker目录下找到在daemon.json文件(没有就新建),将下面内容写入
启动普通容器: docker run --name 别名 镜像ID
启动交互式容器: docker run -it --name 别名 镜像ID
守护式方式创建并启动容器: docker run -di --name 别名 镜像ID
一、Docker简介
Docker是新一代虚拟化技术 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
二、Docker的安装及环境配置
安装版本为社区版
主要参考:Install Docker Engine on CentOS | Docker Documentation 来安装;
1、查看内核(Docker 要求 CentOS 系统的内核版本高于 3.10)
uname -r
2、使用 root 权限登录 Centos。确保 yum 包更新到最新
yum update -y
3、卸载旧版本(如果安装过旧版本的话)
yum remove docker docker-common docker-selinux docker-engine
4、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
5、设置yum源
(原有的yum源安装地址)
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
(阿里云的镜像地址)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
6、安装最新版本的Docker
yum install docker-ce docker-ce-cli containerd.io -y -y
7、启动Docker并设置开机启动
systemctl start docker
systemctl enable docker
8、检验Docker是否安装成功
docker version
9、Docker HelloWorld测试;
docker run hello-world
默认的远程仓库 Docker Hub 网速稀烂
配置下阿里云的镜像仓库
因为本地没有这个镜像,所以从远程官方仓库去拉取,下载;
然后我们再执行一次;
Docker HelloWorld运行原理解析
运行 docker run hello-world
本地仓库未能找到该镜像,然后去远程仓库寻找以及下载该镜像;
然后我们再执行该命令:
出来了 Hellowold。我们具体来分析下 执行原理和过程;
从左到右 client客户端,Docker运行主机,远程仓库;
docker build ,pull,run分别是 构建,拉取,运行命令,后面再细讲;
中间Docker主机里有 Docker daemon主运行线程,以及Containers容器,容器里可以运行很多实例,(实例是从右侧Images镜像实例化出来的)Images是存储再本地的镜像文件,比如 Redis,Tomat这些镜像文件;
右侧是Registry镜像仓库,默认远程镜像仓库 Docker Hub 不过是国外主机,下载很慢,不稳定,所以我们后面要配置成阿里云仓库镜像地址,稳定快捷;