Windows10下安装Docker

前言

​Docker几年前就比较火的概念,而现在,Docker在开发中慢慢的普及开来,不管你是研发还是测试,还是运维人员都或多或少的知道"容器[container]"的概念,并且现在CICD的概念也是越发的普及,解放运维,解放研发,好处自然多的不用说​我们作为一个普通研发,也需要或多或少的去掌握这些工具,好处也是很多,首先可以方便我们的开发,我们本地去启动一个redis,mysql,elasticsearch的服务,不需要再去各自的官网去配置去安装,当我们不用这些服务的时候,这些服务的进程还需要耗费很多的内存和资源,有了docker我们只需要几行命令就可以轻松地本地部署这些开发的常用工具

一.初识Docker

我们在这几年都或多或少的听过Docker 镜像 容器 容器编排 k8s 这些词,其实docker给我的最初印象就是像虚拟机一样的东西,就像vmware或者virtualBox这样的工具,它可以在一台主机上虚拟化初多台虚拟主机,每台主机各玩各的,相互不影响,在vmware中你给它一个xxx.iso文件,它可以给你虚拟出一个ubuntu或者centos的虚拟机实例出来,在docker中iso文件叫做镜像(image),虚拟出来的实例叫做容器(container),用面向对象的思想来解释就是docker是解释执行的环境,image就是类,例如User.java类,container就像new User() 这样new出来的实例,每个实例在不任何特殊的配置情况下,独立运行,相互不影响,我们先简单地初步了解一下docker的基本概念

二.安装Docker

1.1 windows10下安装docker非常简单,基本上只要下一步下一步就可以了,docker官网地址

https://www.docker.com/

Windows10下安装Docker

1.2 因为Docker和Github一样也会有仓库的概念,不同的是Github是代码的仓库,Docker的仓库存放的是"镜像[image]",所以为了以后方便,我们需要注册账号,点击上图的“sign in”进行注册,然后登陆。登录跳转到

https://hub.docker.com/

Windows10下安装Docker

上图的右侧有一个"Download Docker Desktop",点击进入下载docker windows客户端的页面

Windows10下安装Docker

点击上图中的”Download Docker Desktop for Windows“,下载完成之后就会如下的安装包

Windows10下安装Docker

双击不停地下一步,中间会有几次重启,安装完之后,启动Docker

Windows10下安装Docker

可以看到目前的docker版本是19.03,到此为止Windows10下Docker已经成功安装了

三.初用Docker

3.1 在docker下安装redis和使用redis

通过这个简单地方式,来了解一下docker的基本命令,windows10下进入命令行模式,使用命令【docker version】 我们可以如下图展示的,docker的版本是19.03,本地安装了docker的服务端和客户端,并且可以看到docker是用golang语言开发的,19.03版本的docker使用的golang1.12.8开发的

Windows10下安装Docker

3.2 拉取Redis的镜像

俗话说巧妇难为无米之炊,跟安装软件一下,至少先有一个安装包,docker也是这样,我们必须先从docker仓库中拉取Redis的镜像,镜像也就是如上文说的,用面向对象的思想来说,镜像就是“RedisImage.java”,这样的文件可以由我们自己创建(通过Dockerfile方式),当然一些比较常见的通用的镜像文件,早就由其他的小伙伴麻烦生成,提交到公有的仓库(Hub)地址上去了,使用【docker pull redis】命令拉起镜像

Windows10下安装Docker

我们可以看到执行【docker pull redis】的时候,docker的client端就会进行镜像的下载,从docker的官方镜像仓库拉取redis的镜像到本地,拉取镜像完成之后,使用命令【docker images】来查看本地所有的镜像,下图中红色方框标注的就是我们刚刚拉取的redis的镜像

Windows10下安装Docker

3.3 运行redis的镜像

现在我们已经成功拉取了docker的Redis官方镜像了,现在我们就需要用这个"米"来起锅造饭了,使用【docker run】来启动一个redis的容器,完整命令【docker run -p 6379:6379 -d redis:latest redis-server】

简单地解释一下,-p参数表示端口映射,我们知道容器是另一个世界,它有自己的IP,有自己的存储,有自己的端口,-p就表示容器中的6379端口映射到本机电脑的6379端口,-d表示后台启动,redis:latest表示当前需要运行的镜像名和版本,我们拉取镜像的时候默认没有加版本号,默认就是“latest”,所以这边启动完整的镜像名就是"redis:latest","redis-server"表示容器启动后运行redis-server命令

Windows10下安装Docker

然后我们使用【docker ps】查看是否启动成功,看看我们redis这个容器运行的健康状态

Windows10下安装Docker

可以看到容器的id是“022bcd23ebdf”,使用的镜像是“ redis:latest”,状态是“UP”,到此为止,redis的docker容器已经成功运行了,我们本地可以连接到改redis的单机实例,因为我们做了容器端口映射,我们可以简单的做一个实验,首先我们使用【docker exec -it containerId redis-cli】命令进入容器内部运行redis-cli的命令,具体的命令就是【docker exec -it 022bcd23ebdf redis-cli】

Windows10下安装Docker

如上图所示,我们可以看到我们成功进入了redis的客户端的交互端了,我们使用简单的redis命令set docker redis来保存一个键值对

Windows10下安装Docker

然后我们在本地电脑启动一个redis的终端,运行【get docker】

Windows10下安装Docker

可以看到我们打通了本地和容器中的redis的连接,现在我们就可以愉快地使用在docker容器中的redis了

4.小结

本小节我们简单地了解了一下什么是容器,什么是docker,并且成功安装了docker19.03版本,并且成功地在docker运行了第一个容器实例,初学docker 我们学会了

  • 【docker images 】或者 【docker image ls】 命令查看当前主机上所有的已有镜像
  • 【docker run 】命令还运行一个docker的镜像,通过-p 6379:6379 这样的方式来暴露容器里面的程序应用端口,这样可以使我们来容器外来访问程序
  • 【docker exec -it containerId】的方式进入容器内部,来和容器进行交互

您可能还会对下面的文章感兴趣: