手把手教你在Centos 7上安装和使用Docker

1、什么是Docker?

Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于 操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器。

Docker 在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得 Docker 技术比虚拟机技术更为轻便、快捷。

记住最重要的一点,Dokcer实际是宿主机的一个普通的进程,这也是Dokcer与传统虚拟化技术的最大不同。

简单的说,Docker就是一个开源的应用容器引擎;是一个轻量级的容器技术。使用Docker我们可以把软件打包成一个镜像,在镜像中做好软件的相关配置,然后把镜像发布出去,其他使用者就可以直接使用我们的这个镜像。

2、 CentOS 7安装配置Docker

1、在安装前一定要先检查一下你的CentOS的版本:Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。查看的命令是:

[root@localhost huangxin]# uname -r

2、使用yum命令安装docker

[root@localhost huangxin]# yum install -y  docker

3、启动Docker,并设置以后开机Docker自动启动

[root@localhost huangxin]# systemctl start docker    #启动
[root@localhost huangxin]# systemctl enable docker   #设置开始自动启动

4、这时我们可以查看一下docker的有关配置

[root@localhost huangxin]# docker -v     #查看docker的版本
[root@localhost huangxin]# docker info   #查看docker的详细信息

5、配置一下阿里云的镜像源
这个配置不是必须的,只是配置一下以后使用的时候下载的速度会快很多,而且有时候如果直接使用国外的镜像出现下载失败的情况也可以这么配置一下。具体的方法是:

  • 5.2、点开后一顿注册设置后点击最下面的镜像加速器,然后复制加速器地址
  • 5.3、复制后来到虚拟机是用vim 打开/etc/docker/daemon.json添加刚才阿里云上的加速地址,格式如下:
{
  "registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}

注意:这里格式一定要正确,标准的json格式,不然服务不能启动
配置后保存并退出vim界面,输入以下命令重新加载配置并重启Docker

[root@localhost huangxin]# systemctl daemon-reload
[root@localhost huangxin]# systemctl restart docker

6、停止docker
在这里对于Docker的配置就大致完成了,如果我们想停止docker,可以使用一下命令:

[root@localhost huangxin]# systemctl stop docker

3、 Docker常用命令和操作

3.1 镜像操作

1、检索关键字(镜像)

[root@localhost huangxin]# docker search 关键字(镜像名)
# eg:docker search mysql

2、拉取镜像

[root@localhost huangxin]# docker pull 镜像名:tag
# eg: docker pull  mysql:8.0

这个命令中的tag就是镜像的版本,具体这个镜像有哪些版本可以下载,可以去docker.hub查看。tag可以省略,省略后默认下载最新的版本。
3、查看本地所有的镜像

[root@localhost huangxin]# docker images
# eg: docker images

4、删除指定本地的镜像

[root@localhost huangxin]# docker  rmi image-id

3.2 容器操作(以tmocat为例)

1、首先我们可以查看Docker仓库中都有哪些tomcat镜像

[root@localhost huangxin]# docker search tomcat

一般查出来会有一大堆的东西,其中OFFICIAL字段标记为[OK]表示是官方版本,一般我们就下载官方的就好了。
2、拉取tomcat

[root@localhost huangxin]# docker pull tomcat  #将会拉取仓库中官方最新的tomcat镜像

在这一步配置阿里云镜像的效果就显现出来了,下载速度还是非常快的。

3、在启动容器之前我们可以使用docker images查看我们已经安装的镜像,然后我们可以使用下面的命令来启动这个镜像,镜像已启动就会产生一个容器。

4、启动容器

[root@localhost huangxin]# docker run --name Tomcat -d -p 25050:8080 tomcat:latest
239057353cedab1dfc26b921b237580f72009d7710008772d5a2a3befd539324

启动成功就会产生一串数字,其中--name参数后面指定你为这个容器起的名字,-d参数表示启动后在后台运行,-p参数作用是将主机的端口映射到容器的一个端口:-p 主机端口:容器内部的端口,tomcat就是要启动的镜像名,冒号后面指定这个镜像的版本,latest可以省略。

5、查看运行中的容器和所有容器

[root@localhost huangxin]# docker ps      #查看运行中的容器
[root@localhost huangxin]# docker ps -a   #查看所有的容器,包括已经停止的
之后我们可以尝试访问一下这个在虚拟机中启动的tomcat,有两种方法,一种是在图像化的Linux终端中打开浏览器访问[localhost:25050](localhost:25050)

或者我们也可以先使用ifconfig命令查看虚拟机的ip,然后使用宿主机的浏览器中访问虚拟机ip:25050

6、停止运行中的容器
基本语法是:docker stop 容器id

[root@localhost huangxin]# docker stop 2ff7b9f082f2 

7、删除一个容器
基本语法是:docker rm 容器id

[root@localhost huangxin]# docker rm 2ff7b9f082f2 

8、查看容器的日志
docker logs container-name/container-id

[root@localhost huangxin]# docker logs 239057353ced

后记
    这里我只是借助安装tomcat使用了一下docker,不得不说确实非常方便,然而这里仅仅是介绍了一些常用的命令,Docker中还有许多的命令这里没有介绍到,具体的可以参考Docker官方文档,而且我们也可以参考docker.hub上每个镜像官方给出的配置方法,方法很多这里就不一一介绍了。

留言区

还能输入500个字符