内容来自于B站课程,笔者进行了总结。B站课程指路:【狂神说Java】Docker最新超详细版教程通俗易懂_哔哩哔哩_bilibili
目录
1.Docker出现原因
2.Docker历史
3.Docker概述
4.Docker相关网址
5.Docker与传统虚拟化技术的区别
6.Docker基本组成
7.Docker的安装
7.1 查看系统内核
7.2 查看系统配置
7.3 卸载旧的版本
7.4 下载需要的安装包
7.5 设置镜像的仓库
7.6 更新yum软件包索引
7.7 安装docker相关的配置
7.8 启动Docker
7.9 下载hello-world镜像进行测试
7.10 卸载Docker
7.11 配置阿里云镜像加速
8.Docker运行流程
9.Docker底层原理
1.Docker出现原因
为了解决不同环境产品无法运行,部署环境麻烦的问题,使用Docker进行一站式解决。
使用Docker后,发布项目时,项目可以带上环境安装打包(jar+(Redis mysql jdk ES)),用户直接在Docker仓库下载发布的镜像,运行即可使用。
2.Docker历史2010年,几个搞IT的年轻人,成立了一家公司,名为dotCloud。他们做一些paas的云计算服务,LXC有关的容器技术,并将自己的技术命名为Docker。
3.Docker概述Docker 是一个开源的应用容器引擎,基于 Go 语言 ,遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)。
4.Docker相关网址官网:Empowering App Development for Developers | Docker
文档地址:Docker documentation | Docker documentation(docker的官方文档非常详细)
仓库地址:Docker Hub
5.Docker与传统虚拟化技术的区别- 传统虚拟机虚拟出一套硬件,运行一个完整的 *** 作系统,然后在这个系统上安装和运行软件
- 容器内的应用直接运行在宿主机内核,容器没有自己的内核,也没有虚拟硬件,因此比较轻便
- 每个容器间互相隔离,每个容器内都有一个属于自己的文件系统,互不影响
- Docker是内核级别的虚拟化,在一个物理机上可以运行很多的容器实例!服务器性能可以被利用到极致
镜像:docker镜像就好比是一个模板,可以通过这个模板来创建容器服务
tomcat镜像===> run ==> tomcat01
容器(提供服务器)通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中的)。
容器:Docker利用容器技术,独立运行一个或者一个组应用,通过镜像来创建的。
有启动,停止,删除,基本命令。
7.Docker的安装 7.1 查看系统内核仓库:仓库就是存放镜像的地方。分为公有仓库和私有仓库。Docker Hub(默认是国外的)
uname -r7.2 查看系统配置
cat /etc/os-release7.3 卸载旧的版本
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine7.4 下载需要的安装包
yum install -y yum-utils7.5 设置镜像的仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo #国外的地址 # 设置阿里云的Docker镜像仓库 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo #国外的地址7.6 更新yum软件包索引
yum makecache fast7.7 安装docker相关的配置
yum install docker-ce docker-ce-cli containerd.io
显示completed为即安装成功。
ce表示社区版
7.8 启动Dockersystemctl start docker
# 查看当前版本号,是否启动成功
docker version
# 设置开机自启动
systemctl enable docker7.9 下载hello-world镜像进行测试
docker run hello-world
如果本机没有这个镜像,会从仓库进行拉取
7.10 卸载Docker# 1. 卸载依赖 yum remove docker-ce docker-ce-cli containerd.io # 2. 删除资源 . /var/lib/docker是docker的默认工作路径 rm -rf /var/lib/docker7.11 配置阿里云镜像加速
因为本作者没有购买阿里云,因此这一步未进行 *** 作,但还是对过程进行一下记录
进入阿里云官网,进行搜索,容器镜像服务,根据要求,执行四条命令即可
sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://axvfsf7e.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker8.Docker运行流程 9.Docker底层原理
是一个Client-Server结构的系统,守护进程运行在主机上,通过Socker从客户端访问,Docker Server接收到Docker-Client的指令,就会执行这个指令。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)