镜像image:docker镜像就好比是模板,可以通过这个模板创建容器服务,tomcat镜像=》run运行=》tomcat01容器(提供服务器),通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中)
容器container:docker利用容器技术,独立运行一个或者一个组应用,通过·镜像来创建。
启动,停止,删除,基本命令 目前就可以理解为建议linux系统,项目
仓库repository:存放镜像地方 共有仓库 私有仓库
安装docker
环境准备:
1.linux基础
2.centos 7
3.xhell连接远程服务器操作
环境查看
uname -r
显示 系统内核 3.10以上
cat /etc/os-release
显示 系统版本
安装:
帮助文档:Ctrl+鼠标左键
linux安装版本
1.卸载旧版本
yum remove docker \docker-client\docker-client-latest\docker-common\docker-latest\docker-latest-logrotate\docker-logrotate \docker-engine
2.需要的安装包
yum install -y yum-utils
3.设置镜像仓库
yum-config-manager\--add-repo\https://download.docker.com/linux/centos/docker-ce.repo //国外的镜像地址
或者
yum-config-manager\--add-repo\https://cr.console.aliyun.com/cn-shanghai/instances/repositories //国内阿里云
4.更新yum包索引
yum makecache fast
5.安装docker引擎 ce社区版 ee企业版
yum install docker-ce docker-ce-cli containerd.io
6.启动docker
systemctl start docker
7.打印 docker version出现信息说明安装成功
8.通过运行
hello-world映像验证 Docker Engine 是否已正确安装。
docker run hello-world
第一次没有寻找到镜像会自动下载
出现hello from Docker!说明安装成功了
9.查看下载的hello-word镜像
docker images
了解 卸载docker
卸载依赖
yum remove docker-ce docker-ce-cli containerd.io
删除资源
rm -rf /var/lib/docker
docker默认工作路径
/var/lib/docker
阿里云镜像加速
目的:提高效率
1.登录阿里云,找到容器服务
2.找到镜像加速地址(左边栏最下面 镜像加速器)
操作文档会告诉怎么做 centos
3.配置使用 找到类似下表文件 配置
1.
sudo mkdir -p /etc/docker
2.
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors":["https://xxxxxx"]
}
EOF
3.
sudo systemctl daemon-reload
4.
sudo systemctl restart docker
回顾hello-word流程
底层原理
docker怎么工作
docker是一个Client-serve结构的系统,docker的守护进程运行在主机上。通过socker从客户端访问。
dockerserve接收到docker-client指令,就会执行这个命令
docker为什么比虚拟机快
1.docker有着比虚拟机更少的抽象层
2.docker利用的是宿主机内核·,vm选要guest os
所以,新建容器时候,docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导操作。虚拟机是加载guest os,分钟级别的。而docker是利用宿主机操作系统,省略了复杂过程,秒级别。
docker常用命令
帮助命令
docker -version #显示版本信息
docker info # 显示系统信息 包括镜像和容器数量
docker --help #帮助命令
镜像命令
docker images 查看所有主机镜像
docker search 搜索镜像
docker search mysql
docker pull下载镜像
docker pull mysql 5.7 (前提官方文档有支持这版本)
docker rmi删除镜像
容器命令
有镜像才可以创建容器
docker pull centos
新建容器并启动
列出所有运行的容器
退出容器
exit #直接从容器停止并退出
ctrl+p+q #可以不停止退出
删除容器
docker rem 容器id #删除指定容器 除正在运行容器
docker rm -f $(docker ps -aq) #强制删除所有容器
docker ps -a -qixargs docker rm #删除所有容器
启动和停止容器
docker start 容器id #启动容器
docker restart 容器id #重启容器
docker stop 容器id #停止当前正在运行的容器
docker kill 容器id #强制停止当前容器
常用其他命令
后台启动容器