1. 什么是Docker?

我们先理解以下几个概念

  • 镜像:它里面装着一个操作系统,他是一个镜像文件,里面有对应的服务(nginx、tomcat、redis、mysql和代码等),他都给你预先装进这个镜像中,你在运行就不需要再次下载,然后我们可以随意拿到其他地方去使用,比如Windows系统你得有个镜像吧,这个就相当于那个镜像,但是他的体积更小。

  • 容器:就是由镜像生成的可以运行的操作系统,相当于电脑装完了Windows系统,然后我们就可以使用这个系统,容器可以运行在物理机的操作系统内,与物理机共存,占用物理机的内存、CPU、磁盘等,所以容器就相当于我们的虚拟机,可以运行在物理机系统中,且不会影响到物理机,实现了两个或多个系统共存的功能(我们通常将项目代码打进镜像中运行)。

好的,如果你理解了镜像和容器的概念,那么就说说docker是啥吧,docker是一个管理容器和镜像的工具,他是管理者,通过docker,我们可以更好地管理镜像与容器,可以用docker命令从外部镜像库导入镜像,或者我们可以将镜像上传到外部镜像库,还可以通过镜像文件将镜像变成可运行容器(可运行的操作系统),然后使用docker命令可以去查看这个容器的日志、内存、以及内部项目的运行情况。

而且docker操作的容器也便于我们对软件版本的更新,实现了类似容器内部与外部环境隔离的情况,内部出问题不会影响到物理机的运行。

2. Docker的安装与使用

2.1 安装

  • 系统:EulerOS

  • 安装命令:yum install -y docker

  • 注意:Debian系列或Ubuntu等其他系统安装包也许是叫docker.io

安装完毕后命令行输入docker即可出现以下内容

2.1.1 第一步:更改Docker默认下载源
  • 下载源获取地址可以参考作者博客中名为“Docker镜像下载源更改阿里云源的方法”这篇内容中有详细步骤

  • 因为docker默认是从docker官网去下载拉取镜像,而官网对国内不开放,所以我们需要改为阿里云的docker源进行下载镜像

在命令行输入以下命令

 sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["改为自己获取的加速源地址"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker  

Bash

这一块是创建了一个docker的配置文件,然后我们设置了配置项“registry-mirrors”的值为阿里云中给的地址,之后更新服务配置并重启

2.2 使用

2、去阿里云下载拉取一个mysql镜像

使用docker load将镜像文件导入进来

使用docker images查看镜像是否导入成功

3、使用docker run将镜像变成容器

  • docker run -d -p 暴露物理机端口:虚拟机内需要出来的端口 --name 给容器起个名字 -e 设置环境变量 mysql:5.7-debian(这个是镜像的名字,名字与标签之间要用:分割)

4、查看容器是否创建成功

  • 我们多了一个容器,名字叫db5.7

  • 查看端口发现我们暴露的端口3608也在

至此,容器创建成功,且无问题,可以正常使用

3. docker常用命令

请看我的博客中名为“docker常用命令合集”这篇博客~

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐