Docker安装部署Redis数据库

通过Docker部署Redis,比起我们自己编译安装的方式,会更加方便容易管理。今天就来简单分享一下使用Docker部署Redis数据库。

1,拉取镜像

通过下列命令:

docker pull redis

2,创建数据卷

通常,类似于MySQL,Redis作为数据库,我们最好还是需要将其配置和数据等等挂载到数据卷以持久化到宿主机。

仍然是使用具名挂载的方式方便管理。

docker volume create redis-config
docker volume create redis-data

这样就创建了两个数据卷分别是存放配置文件数据,大家也可以自行命名。

3,创建并编写配置文件

先进入到配置文件的数据卷目录,可以通过docker volume inspect命令查看数据卷的位置:

docker volume inspect redis-config
Docker安装部署Redis数据库

进入目录后创建名为redis.conf的文件,并加入如下内容:

requirepass 12345678
dir /data

这里设置了密码为12345678,设定了数据文件存放目录为/data,这些配置都可以自定义,更多配置可以参考这篇博客

4,创建并启动容器

执行下列命令:

docker run -id --name=redis -v redis-config:/usr/local/etc/redis -v redis-data:/data -p 6379:6379 -e LANG=C.UTF-8 redis su -l root -c "redis-server /usr/local/etc/redis/redis.conf"

上述参数如下:

  • -v 指定数据卷,可见将容器内/usr/local/etc/redis挂载至了数据卷redis-config,将容器内/data挂载至数据卷redis-data,可见这里挂载数据卷的容器内路径和我们上述预先写的配置文件中对应的路径是要一致的
  • -p 用于暴露端口
  • -e 用于指定容器内环境变量,设置容器的语言环境变量LANG值为C.UTF-8,这个最好是要设置,否则容器内默认是英文环境,使得Redis可能无法存放中文内容

末尾是启动命令,单独拿出来看一下:

su -l root -c "redis-server /usr/local/etc/redis/redis.conf"

意思是在容器内以root身份运行redis-server并指定了配置文件位置。

之所以要以root身份运行,是因为防止其没有权限将数据写入到磁盘。也可见最后指定的配置文件路径,和前面-v挂载的配置文件数据卷的容器内路径一致,这里好理解,但是要注意,如果你是自定义别的路径与文件名就需要在-v挂载时和最后启动指定配置时做一下变化了。

最后,就可以使用客户端连接服务器上的Redis了!

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/6596

(0)
郭靖的头像郭靖
上一篇 2023年1月10日 下午2:20
下一篇 2023年1月12日 下午5:28

相关推荐

  • Nginx升级版本

    一:宝塔Nginx升级 在宝塔界面点击软件管理->运行环境->Nginx的设置 选择切换版本->选择想要升级的版本,点击切换等待安装成功 二:Linux下升级nginx版本(源码包方式) 方式:使用源码包的方式 老版本:nginx/1.13.0 新版本:nginx/1.22.0 一:下载源码包 wget http://nginx.org/d…

    2022年8月2日
    1.5K00
  • 让你配置linux 路由,你该怎么配置

    如下图所示有两个网络,分别是0网段和2网段,路由器1组成0网段,路由器2从路由器一种分出一个2网段 如果要在不同网段直接通讯,需要添加路由,linux添加路由命令如下: route [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If] add : 添加一条路由规则 del : 删除一条路由…

    2024年6月18日
    93900
  • Expect解决shell脚本的交互需求

    在linux系统中,shell脚本可以大大提高我们的工作效率。但遇到需要交互的场景时,shell脚本却无法解决。 简介 Expect语言是基于Tcl的。Tcl实际上是一个子程序库,这些子程序库可以嵌入到程序里从而提供语言服务。 最终的语言有点象一个典型的 Shell语言。里面有给变量赋值的set命令,控制程序执行的if,for,continue等命令,还能进…

    2022年11月15日
    1.0K00
  • Ubuntu 18.04 永久修改DNS

    每次在/etc/resolv.conf 修改DNS之后,重启服务器DNS就会重置为127.0.0.53 解决过程 从/etc/resolv.conf的注释中发现systemd-resolved为本地应用程序提供了DNS解析服务。通过 systemd-resolved 在本地回环网口 127.0.0.53 上提供的本地DNS服务器。 应用程序可以直接向 127…

    2022年7月5日
    1.5K00
  • Prometheus 监控进程

    prometheus 进程的监控 1. process exporter功能 2. 监控目标对主机进程的监控,chronyd sshd 等服务进程已经已定义脚本运行程序的运行状态监控。 process-compose的安装 监控所有进程 监控指定进程 docker 运行 docker ps -a 确认 up http://10.19.1.220:9256/m…

    2024年1月4日
    91900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信