开发者

Linux上使用docker启动redis并远程访问的实现

目录
  • 一、Centos7 上安装 docker
  • 二、docker 安装 Redis 并启动
  • 总结

一、centos7 上安装 docker

1、安装必要的一些系统工具

yum install -y yum-utils device-mapper-persistent-data lvm2

2、安装 docker 的 yum 源

yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo	# 中央仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.rwww.devze.comepo	# 阿里仓库

3、安装 docker

yum instauRRiXuRll docker-ce  # 由于 repo 中默认只开启 stable 仓库,故这里安装的是最新稳定版

可以查看所有仓库中所有 docker 版本,并选择特定版本安装

yum list docker-ce --showdupli编程客栈cates | sort -r 

Linux上使用docker启动redis并远程访问的实现

yum install docker-ce-20.10.9.ce

4、开启 docker 服务

systemctl start docker	# 启动 Docker 
systemctl enable  docker	# 开机自启

5、 验证 docker

 docker version

有 client 和 service 两部分表示 docker 安装启动都成功了

Linux上使用docker启动redis并远程访问的实现

二、docker 安装 redis 并启动

1、docker 拉取 redis 镜像

docker pull redis

2、查看本地镜像

docker images

Linux上使用docker启动redis并远程访问的实现

3、挂载配置文件

docker 安装的 redis 默认只能够本地连接,不能进行远程访问,因此需要手动挂载外部 redis 配置文件。

(1)在 Linux 任意目录下创建存放 redis 配置文件和数据的目录结构:/docker/redis/conf,/docker/redis/data。

(2)将配置文件 redis.pythonconf 从官网下载下来放到配置文件目录 /docker/redis/conf 下。

(3)修改以下配置:

  • 1)bind 127.0.0.1 :注释掉这部分,这是限制 redis 只能本地访问
  • 2)protected-mode no :默认是yes,开启保护模式,限制为本地访问
  • 3)requirepass 123456 :配置 redis 连接密码,默认是注释的
  • 4)dir ./ :更改本地redis数据库存放文件夹(可选)
  • 5)appendonly yes :redis 持久化,开启了这个 redis 就不会每次重启时自动清空了

4、创建容器并启动 redis 服务端

docker run -itd -p 6379:6379 --name lhjredis -v /docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data redis redis-server /etc/redis/redis.conf 

1)–name:给容器起一个名字;

2)-p:端口映射(宿主机端口:容器端口);

3)-v:挂载自定义配置(自定义配置:容器内部配置);

本命令共有两个挂载:Linux 上自定义的 redis 配置(/docker/redis/conf/redis.conf)挂载到容器内 redis 应用的默认配置文件 /etc/redis/redis.conf;Linux 上自定义的数据存放目录(/docker/redis/data)挂载到容器内 redis 应用的默认数据存放目录(/data)。

这样 docker 容器内的 redis 应用会使用 Linux 上自定义的配置文件,docker 容器内的 redis 应用的数据会放到 Linux 上自定义的数据存放目录。

4)-d:后台运行;

5)redis-server --appendonly yes: 在容器执行 redis-server 启动命令,并打开 redis 持久化配置;

5、启动成功,查看状态

docker ps

Linux上使用docker启动redis并远程访问的实现

6、进入到启动的容器

docker exec -it myredis  /bin/bash

Linux上使用docker启动redis并远程访问的实现

执行 docker exec -it 容器名 /bin/bash 命令可以进入到启动的容器中;

exit 指令可以退出容器

7、在容器中使用 redis 客户端

redis-cli

Linux上使用docker启动redis并远程访问的实现

进入容器后,使用以上命令启动 Redis 客户端,将连接到您的本地 Redis 服务器。

如果是连接其他服务器的 redis,则需要加参数(主机地址、端口号、密码)

redis-cli -h xx.xxx.xx.xxx -p 6379 -a xxx

8、使用 Redis Desktop Manager 客户端进行连接

Linux上使用docker启动redis并远程访问的实现

注意

  • 当启动容器端口报错时,可以通过netstat -lntp | grep 6379查看哪个程序在占用
  • 可以通过 sudo kill 637开发者_Elasticsearch9 杀掉php占用端口的程序
  • 如果使用阿里云等,请务必把相应端口打开

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新数据库

数据库排行榜