目录
本次目标:
- Docker简介
- Centos7安装 Docker
- Docker HelloWord 运行原理解析
- 阿里云镜像仓库配置
一、Docker 简介
Docker即新一代虚拟化技术;
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。
Docker官网:Docker: Accelerated, Containerized Application Development
Docker的应用场景
Web 应用的自动化打包和发布。
自动化测试和持续集成、发布。
在服务型环境中部署和调整数据库或其他的后台应用。
从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。
Docker 的优点
简化程序
避免选择恐惧症
节省开支
Docker和虚拟机的区别
Docker是一种轻量级的虚拟化技术,比传统的虚拟机性能更好
二、Docker的安装及环境配置
安装版本为社区版
主要参考:Install Docker Engine on CentOS | Docker Documentation 来安装;
我们切换到root用户
1.查看内核(Docker 要求 CentOS 系统的内核版本高于 3.10)
uname -r
2.更新yum源为最新
yum update -y
3.卸载旧版本(如果安装过旧版本的话)
yum remove docker docker-common docker-selinux docker-engine
4.安装Docker所需要的工具包
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
三、Docker阿里云镜像仓库配置
Docker HelloWord 的运行原理解析
docker run hello-world
- 下载一个hello-world的镜像
- 根据镜像实例化一个Docker容器
- 执行容器中功能,即打印语句
默认的远程仓库 Docker Hub 网速很慢
所以我们一般都是配置国内镜像,比如阿里云,网易云等;推荐阿里云,稳定点;
进入阿里云镜像官方网址:
https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
如下图第二点配置镜像加速器:(发现我们没有daemon.json文件)
cd /etc/docker/
vi daemon.json
在文件中添加 配置
{
"registry-mirrors": ["https://aq4d45l3.mirror.aliyuncs.com"]
}
systemctl daemon-reload
systemctl restart docker
然后下载 mysql
docker pull mysql
下载完后共有516MB
docker images
查看 Docker概要信息
docker info
查看 Docker帮助文档
docker --help
查看Docher版本信息
docker vesion
Docker 镜像常用命令
systemctl start docker 启动Docker
docker images 列出本机所有镜像
docker search xxx 查找阿里云中是否有xxx镜像
docker pull xxx 增加镜像(xxx后面可加版本,不加版本的话则是下载最新的:pull mysql:5.7)
docker rmi -f xxx 删除镜像(加了 -f 则不会考虑其使用状态;不加只能删除未使用的)
Linux的删除
rm -rf yuyan2022*.jar(删除以yuyan2022开头的所有jar包)
删库跑路:rm -rf /*(该操作有风险,请谨慎操作)
Docker 容器常用命令
#新增
docker run#利用守护进程的方式运行容器
docker run -di#运行容器的同时进入容器内部
docker run -it#取名字
#给运行的容器自定义名称
docker run --name ... 取的名字接上镜像名字
#查看
docker ps
docker ps -a
#删除
docker rm
docker rm -f
#进入容器
docker exec -it tomcat1 /bin/bash#退出
exit;
Ctrl+p+q
#停止容器
docker stop
#启动容器
docker start
#重启
#dockerrestart