在网上看了些简单docker的教程,可能我的理解能力有问题,发现他们都不说人话。
首先说一下docker是什么东西?
docker就相当于虚拟机,为什么要用这个玩意,docker对比虚拟机的的优势我就不说了,在其他文档里都有。你在做项目的时候有没有遇到这样的问题,代码在你的机子上能跑,但是在别人的机子上就出问题了 。什么原因,有可能是环境不同导致的吧。docker就是来解决这个问题的。docker提供的这种虚拟化环境,让你和你的小伙伴可以拥有一样的运行环境。
来看看docker的三个基本概念
1.镜像,就是你从仓库里拿的那些程序或者mysql,nginx,ubantu这些东西
2.容器,把镜像在docker里面跑起来就是容器
3.仓库,就是放镜像的地方
来操作一波波
1.在centos中安装docker
yum install -y docker
2.查看是否安装成功
yum list installed | grep docker
3.启动docker
systemctl start docker
4.查看docker是否启动成功
systemctl status docker
安装成功后改下仓库源,国内比较快,嘿嘿
vi /etc/docker/daemon.json
insert 编辑内容如下 并esc 输入:wq 保存退出
{
"registry-mirrors":["https://docker.mirrors.ustc.edu.cn"]
}
重启docker
systemctl restart docker
5.查看docker中拥有的镜像(你没下载肯定没有)
docker images
6.从仓库下载一个镜像,以 mysql为例
docker pull mysql:8.0
7.启动镜像
docker run --name mysql8.0 -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:8.0
8.查看运行的容器(我之前说过,你不会忘了吧)
9.进入容器(两种方式,区别自己找去,这里用我一般用的那种)
那如果我们想运行这个容器中的镜像的话,并且调用镜像里面的 bash ,我们可以使用如下命令:
docker exec -it mysql8.0 /bin/bash
-i: 交互式操作。
-t: 终端。