5分彩官网注册码_在windows环境里,用Docker搭建Redis开发环境(新书第一个章节)

  • 时间:
  • 浏览:3

    有些人儿都知道高并发分布式组件的重要性,时候 不可能 要进大厂,那此技术不可或缺。但那此技术的学习难点在于,大多数项目里的分布式组件,前会搭建在Linux系统上,在有些人的windows机器上太难搭建开发环境,不可能 无法搭建开发环境,就无法实际操练,而单靠背理论题,是无法通过面试的。

     比如搭建Redis环境,或许不可不可不都可以在windows上下载个版本,但你之类版本前会最新的,时候 不可能 要搭建集群,不可能 还不里可不可不都可以 到Linux环境上。对此,不可不可不都可以先在Windows机器上安装Docker,时候 在linux容器里安装Redis。原来一旦引入Docker,不仅能比较容易地搭建Redis集群,时候 还能在Windows上搭建其它分布式组件的环境。

    在本文里,首先将介绍Docker的相关技能,时候 再给搭建基于Docker的Redis开发环境的步骤。 

1 了解必要的Docker技能

    在Docker里,容器、镜像和仓库是另二个 比较重要的概念。其中镜像(image)是另二个 静态的概念,比如不可不可不都可以把另二个 最小化的linux操作系统打包成另二个 镜像时候 再传入仓库,不里可不可不都可以先在linux 上安装Redis,再把整合这两者的二进制流打包成另二个 镜像。不可能 在本机安装好Docker后,本地操作系统、Docker以及容器的相互关系如下图所示。其中最底层的是本机操作系统,比如Windows,在之上是能运行容器的Docker。 

  

     在实际项目里中,会用Docker命令,从仓库中下载镜像,比如是linux+Redos镜像,时候 再能通过命令启动镜像,原来就不可不可不都可以使用镜像里的Redis等应用了。在下文给出具体的操作演示前,这里先总结下Docker的相关概念。

  • 仓库其实是个代码中心,不可不可不都可以是在本地,不里可不可不都可以设置在远端,在其中能存储镜像,在本书里,一般是从默认的远端仓库里下载镜像。
  • 镜像是静态,有些之类Java里的类,而容器是镜像运行时的实体,不里可不可不都可以理解成由类实例化而成的对象。而通过Docker加容器的法子,不可不可不都可以快速地在Windows平台上搭建基于Linux的Redis环境。
  • 在开发应用意义上讲的Docker,一般含有Docker软件和Docker命令。在后文里,不仅会给出下载安装Docker的步骤,更会讲述平时项目里一个劲用到的能下载镜像和启动容器等的Docker命令。通过此类命令,有些人儿能对Redis进行必要的开发、配置和部署动作。

    不可能 要在Windows上安装Docker, 不可不可不都可以到官网www.docker.com上去下载对应于Windows的Docker安装应用应用程序,下载完成后按步骤依次按提示点击,即可完成安装。完成后,能在任务栏里看得人Docker图标,鼠标移上去后,能看得人之类于“Docker正在运行”的提示。再进入到命令窗口,输入docker version命令,不可能 能正确地看得人输出的版本信息,就是明Docker不可能 成功地在本地安装成功。  

2 Docker的相关命令

    这里将给出比较常用Docker命令,打开命令行窗口,首先运行docker images来看下当前本机有那此镜像。不可能 此时刚安装好Docker,还没下载镜像,就是本地那末任何镜像。不可不可不都可以通过docker pull命令来下载镜像,比如不可不可不都可以用docker pull ubuntu:latest,去默认的远端docker仓库下载最新的ubuntu镜像,而ubuntu 是基于Debian的Linux 操作系统,这里pull命令后ubuntu:latest,表示去下载最新版本的ubuntu。下载完成后,再运行docker iamges命令,就能看得人如下图所示的效果。 

     其中REPOSITORY和TAG字段分别表示镜像的名字和标签,而IMAGE ID则表示镜像的ID,CREATED和SIZE则表示该镜像的创建时间和大小。一般来说,不可不可不都可以通过REPOSITORY:TAG或IMAGE ID,能唯一标识某个镜像。

    而通过docker rmi命令能删除本地镜像,具体语法是docker rmi 镜像名:标签,不可能 是docker rmi 镜像ID。比如这不可不可不都可以通过docker rmi ubuntu:latest或docker rmi 1d622ef86b13,能删除刚下载的ubuntu:latest镜像。

2.1 Docker容器相关的命令

    镜像和容器是之类于类和对象的关系,通过实例化类,能得到对象,而通过run命令,则能运行镜像生成容器。比如通过前文的docker pull命令下载好ubuntu镜像后,就不可不可不都可以通过如下的run命令来启动该镜像。

         1      docker run -it ubuntu:latest /bin/bash

    其中通过ubuntu:latest,能指定待运行的镜像,-it表示在终端交互式操作,而/bin/bash则表示容器启动后前要执行的命令,这里是启动shell。运行上述命令后,就能在该容器里运行基于linux的命令,比如ls或pwd,运行完命令后,不可不可不都可以通过exit从容器交互窗口里退出来。相关的操作的效果如下图所示。

 

     而通过docker ps命令,能看得人当前所有的容器,不可能 要展示所有的容器,则不可不可不都可以加入-a参数。运行docker ps -a后,能看得人如下图所示的结果。 

    其中STATUS表示当前容器的具体情况,这里是Exited,表示已退出,时候 从中还能看得人容器的ID以及该容器所对应的镜像。

    而通过docker rm 容器ID命令,能删除指定的容器,比如能通过docker rm bc8d0ea9a1a3命令删除刚才通过run命令创建的容器,删除后再运行docker ps -a,就能确认该容器不可能 被删除。

2.2 用pull命令下载最新Redis镜像

    不可不可不都可以用“docker pull redis”命令,下载最新版本的redis镜像,这里不里可不可不都可以用“docker pull redis:标签”的命令,下载指定版本的redis,不可能 不指定,则会用默认的标签latest去下载最新版本的redis镜像。运行该命令后,能看得人如下图所示的效果图,从中能看得人,不可能 成功下载了最新版本redis镜像。

 

    随不里可不可不都可以用如下的run命令来运行Redis容器。

         1      docker run -itd --name myFirstRedis -p 6379:6379 redis:latest

    这里的-it表示在终端交互式操作,而d则表示在后台运行。通过—name能指定该容器的名字,而通过-p参数,指定了容器的6379端口映射到宿主机(即运行Docker的机器)6379端口,原来在容器內部就能以宿主机ip:6379的法子访问Redis服务,最后的redis:latest参数,则指定根据该镜像启动容器。运行完上述run命令后,再执行docker ps命令,能看得人如下图所示的结果。 

   从中能看得人,名为myFirstRedis的容器占据 Up具体情况,时候 是通过6379端口对外提供服务。

2.3 通过exec命令进入Redis容器

   通过run命令,能在后台启动Redis容器,此时不可不可不都可以通过如下的exec命令,进入到Redis容器,进入容器后,就能执行Redis的相关操作。

         1      docker exec -it myFirstRedis /bin/bash

    docker exec 表示在运行的容器中执行命令, 其中myFirstRedis参数表示在哪个容器里执行命令,-it表示以终端交互的法子执行命令,而/bin/bash则表示前要指定的命令。执行上述exec命令后,就能看得人如下图所示的效果,这说明不可能 进入了名为myFirstRedis的容器,时候 在命令窗口不里可不可不都可以继续输入Redis命令。

    在上图所示的界面里,不可不可不都可以继续输入redis-cli命令,连接该容器里的Redis服务器,随不里可不可不都可以通过set val 1命令,创建另二个 值的1的val变量,创建后再不可不可不都可以通过get val来获取val变量的值,具体效果如下图所示。 

    这里提到的redis-cli等命令的含义,在后文里会完全说明,但就是不可能 能成功地运行Redis相关命令并看得人对应的结果,就能说明基于Docker的Redis开发环境不可能 成功地安装进 本机里。时候 不可能 要退到Windows命令行,则前要连续两次输入exit,其中通过第另二个 exit命令,能退出用redis-cli进入到的Redis运行窗口,而通过第二个命令,能退出因docker exec命令而进入到的Redis容器。

2.4 停止、重启和删除Redis容器

    不可能 本书所介绍的Redis的开发和运行环境是基于Docker的,当Redis容器启动后,在修改容器配置等操作后,不可能 前要重启容器,时候 在有些场景里,还前要停止并删除过期的Redis容器,就是在这里就将给出相关的操作步骤。

    当运行docker ps,发现名为myFirstRedis的Redis容器占据 Up(即运行中)具体情况时,不可不可不都可以通过docker stop myFirstRedis命令停止该容器,其中myFirstRedis是待停止的容器名。请注意这里停止的是容器,而前会Redis服务,运行后再通过docker ps,就无法再看得人myFirstRedis,应为该命令只返回占据 Up具体情况的容器,此时前要用docker ps -a命令,查看所有容器时,不可不可不都可以看得人如下图所示的效果,从中能看得人,myFirstRedis容器不可能 占据 Exited(即退出)具体情况。 

     不可能 要再启动该容器,不可不可不都可以用docker start myFirstRedis或docker restart myFirstRedis命令,这另二个 命令的参数前会待启动的容器名。这另二个 命令的差别是,docker start会挂载容器所关联的文件系统,而docker restart不用。就是在前要重启容器时,建议先运行docker stop命令,再运行docker start命令。

    不可能 当Redis等容器里的配置或数据过于老旧时,不可不可不都可以通过docker rm命令删除该容器,具体语法是docker rm 容器名,但在删除前,首太难确保该容器占据 Exited具体情况,时候 删除前会出错。

    比如要删除名为myFirstRedis的Redis容器,首太难用docker stop myFirstRedis命令确保该容器占据 Exited具体情况,时候 再用docker rm myFirstRedis命令删除,删除完成后再运行docker ps -a命令查看所有具体情况的容器时,就无法再看得人该容器了。 

3 总结容器和Redis的相关命令 

    在上文里,给出了针对容器和Redis的若干命令,为了让有些人儿在学习过程中不产生混淆,这里将根据流程,总结下相关的命令。

    第一,    在安装完Docker软件后,不可不可不都可以在命令行里输入docker pull redis命令去下载最新的Redis镜像,下载完成后,能通过docker images命令来确认镜像。

    第二,    不可不可不都可以用docker run -itd --name myFirstRedis -p 6379:6379 redis:latest命令,根据下载的redis:latest镜像创建名为myFirstRedis容器。创建完成后,能通过docker ps -a命令来查看对应的容器。

    第三,    不可能 创建前不可能 有名为myFirstRedis的容器,那末不可能 再创建同名的容器,就会出现 间题图片,这时不可不可不都可以先用docker stop myFirstRedis命令确保该容器占据 Exited具体情况,并通过docker rm myFirstRedis命令删除该容器。

    第四,    在创建并启动myFirstRedis容器后,则不可不可不都可以通过docker exec -it myFirstRedis /bin/bash命令进入到myFirstRedis容器,随不里可不可不都可以通过redis-cli命令,创建另二个 连到Redis服务器的客户端,并通过该客户端输入各种Redis命令。

    第五,    不可能 前要重新启动myFirstRedis容器,不可不可不都可以先通过docker stop myFirstRedis命令停止该容器,再通过docker start myFirstRedis命令启动它。

    第六,    不可能 要停止Redis服务器,则不可不可不都可以先通过redis-cli命令连接到服务器,再输入shutdown命令,不可能 在myFirstRedis容器的命令行里直接输入exit命令。

4 求赞和版本说明 

    通过上文的总结,有些人儿能系统性地理解相关命令。其实说,用Docker搭建基于Linux的Redis的开发环境要比直接安装基于Windows的Redis环境要麻烦,但一方面,在Linux环境不可不可不都可以安装最新版的Redis,而在Windows上则不里可不可不都可以 安装比较老的版本,时候 在大多数项目里,Redis前会配置在Linux上,就是,有些人儿在安装Redis环境上付出的努力是值得的。

     本文是从我新书第另二个 章节里摘录出来的,不可能 有些人儿感觉不可不可不都可以,都请点赞,不可能 有那此项目,不里可不可不都可以留下评论。

     本书谢绝任何转载