暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Windows通过docker安装redis

疯豆芽的胡侃 2020-12-08
522

业务需求

因为公司需要在windows server上面部署项目,项目需要使用redis.浪子就风风火火的准备开干了.跑到redis官网去下载redis的时候, 傻眼了! redis没有Windows版本!!!WTF!!! 无奈之下,浪子在网上搜索了一番,发现有一个非官方的redis.就是这个:https://github.com/MicrosoftArchive/redis/releases. 但是这个版本又太低了, 而且有好久没有更新了.悲伤~

无奈之下, 浪子只能曲线救国了~

Windows安装docker, 然后docker上面安装redis

既然鲁迅确定了, 就开干吧!

Windows安装docker

不得不说, Windows作为服务器,还是有很多不便的地方.最开始的时候, 我使用Windows的官方文档安装docker,一路顺畅.安装完成后准备安装redis的时候...

no matching manifest for windows/amd64 10.0.17763 in the manifest list entries

这个错大致就是说docker不匹配Windows版本. 崩溃~

然后在网上找到了解决方法, but...

but在我通过Windows官方文档安装的docker根本就没有鲸鱼图标哇.WTF!!!

再次无奈之下, 我又在docker官网下载了Windows的安装版本.安装好后终于有图标了, thanks god

通过上面的方式我再次去下载安装redis的时候...再次出现了刚刚的错误, 妈呀~~~

我再次在上午寻求解决方法, 然后看到了一个修改docker下载源的配置, 我想着为了下载快一点就配置了

  1. {

  2. "registry-mirrors": [

  3. "https://registry.docker-cn.com",

  4. "http://hub-mirror.c.163.com",

  5. "https://docker.mirrors.ustc.edu.cn"

  6. ],

  7. "insecure-registries": [],

  8. "debug": false,

  9. "experimental": true,

  10. "features": {

  11. "buildkit": true

  12. }

  13. }

然后我再次去安装的时候, 居然就对了, 哈哈哈哈哈

说了这么一大堆, 下面就是docker安装redis的正常教程了

docker安装redis

  1. docker查询redis镜像,使用starts最多的一个, 一般就是第一个

  1. docker search redis

  1. 拉取redis镜像

  1. docker pull redis

这里我没有加redis版本号, 就是拉取最新的redis镜像 (没有截图)

  1. 查看docker镜像

  1. docker images

这里可以看到我们已经成功拉取了redis镜像

  1. 启动redis镜像 无配置文件启动

  1. docker run -p 6379:6379 -d redis:latest redis-server

这种方式启动后, 数据全部是放在docker的, 如果docker删除了, 数据就丢了.所以生产环境一般建议将redis的配置和数据映射到本地, 下面是另一个启动方式

  1. 从官网下载redis.conf文件

  2. 将redis.conf放在本地的一个目录,比如: D:/redis. 并对文件做一下修改:


    修改启动默认配置(从上至下依次):


    1. bind 127.0.0.1 #注释掉这部分,这是限制redis只能本地访问

    2. protected-mode no #默认yes,开启保护模式,限制为本地访问

    3. daemonize no#默认no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程,改为yes会使配置文件方式启动redis失败

    4. databases 16 #数据库个数(可选),我修改了这个只是查看是否生效。。

    5. dir ./ #输入本地redis数据库存放文件夹(可选)

    6. appendonly yes #redis持久化(可选)

    7. requirepass 密码 #配置redis访问密码

  3. 在D:/redis目录下面新建data目录,用于存储redis数据

  4. 启动redis镜像(配置和数据映射到本地)

  1. docker run -d --name redis-server -p 6379:6379 -v D:/redis:/etc/redis -v D:/redis/data/:/data redis:latest etc/redis/redis.conf --appendonly yes --requirepass "123456"

ps: 上面的命令里面,第一个 -v
是将redis.conf映射到docker的redis配置,第二个 -v
是将redis存储数据做映射.这里 :
前面的路径都是本地的路径,不要弄错了

  1. 查看redis进程

  1. docker ps

  1. 通过 redis-cli 连接测试使用 redis 服务 第一步:连接到docker的redis镜像

  1. docker exec -it redis-server /bin/bash 进入docker终端,在终端中输入:redis-cli

ps: 这里的redis-server就是上面 docker ps
命令里面的names

第二步:连接redis服务器(如果有密码, 就加上 -a
这个参数)

  1. redis-cli -a 123456

到这里,我们的redis就安装成功了.可以测试一下 set get数据.

ps:安装过程中,如果发现容器启动失败,使用docker logs查看容器日志 本例中docker容器名为redis,查看日志命令为:docker logs -f -t --tail 100 redis

浪子欢迎大家来交流计算哇~ 哈哈哈哈


文章转载自疯豆芽的胡侃,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论