查找Redis镜像

镜像仓库

https://hub.docker.com/

下拉镜像

docker pull redis

查看镜像

docker images

创建Redis容器

运行Redis镜像

注意:运行Redis镜像,配置数据卷时有坑。因为redis容器中不存在redis.conf文件,挂载时需在物理机中创建出redis.conf文件,映射进入redis容器。

创建redis.conf文件

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

命令启动

docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

参数说明

-p 6379:6379:将容器的6379端口映射到宿主机6379端口
-v /mydata/redis/data:/data:将数据挂载到宿主机
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf:将配置挂载到宿主机
-d redis redis-server /etc/redis/redis.conf:后台运行容器并加载配置文件

docker-compose启动

version: '2'
services:
redis:
container_name: redis
image: redis
ports:
- "6379:6379"
volumes:
- /mydata/redis/data:/data
- /mydata/redis/conf/redis.conf:/etc/redis/redis.conf
- /mydata/mysql/conf:/etc/mysql
restart: always
command: redis-server /etc/redis/redis.conf
environment:
- COMPOSE_PROJECT_NAME=redis-server

查看容器

docker ps -a

运行redis客户端

docker exec -it redis redis-cli

Redis中存入数据

127.0.0.1:6379> set a b
OK
127.0.0.1:6379> get a
"b"
127.0.0.1:6379> exit

重启Redis容器

docker restart redis

查看Redis中存入的数据

[root@k8s-master01 ~]# docker exec -it redis redis-cli
127.0.0.1:6379> get a
(nil)

注意: 上步骤存储的数据丢失,因为数据没有持久化到本地。修改配置文件。

修改Redis配置

  1. 进入挂载数据卷
[root@k8s-master01 ~]# cd /mydata/redis/conf/
[root@k8s-master01 conf]# ls
redis.conf
[root@k8s-master01 conf]# pwd
/mydata/redis/conf
  1. 修改配置
cat > redis.conf <<-EOF
appendonly yes
EOF

重启容器配置生效

docker restart redis

再次存入数据

[root@k8s-master01 conf]# docker exec -it redis redis-cli
127.0.0.1:6379> set aa bb
OK
127.0.0.1:6379> get aa
"bb"

再次重启容器

docker restart redis

再次查看数据

[root@k8s-master01 conf]# docker exec -it redis redis-cli
127.0.0.1:6379> get aa
"bb"

Docker启动容器自启

docker update redis --restart=always

Docker(四):Docker安装Redis的更多相关文章

  1. Docker容器编译安装Redis

    Docker容器编译安装Redis 1.创建容器 -i 交互模式 -d 后端运行 -h 容器的hostname --name 容器名 --network 网卡 --ip IP地址 -p 端口映射 -- ...

  2. Docker(四)安装Redis

    1.安装redis https://blog.csdn.net/qq_29917523/article/details/78019511 2.测试连接

  3. docker - 容器里安装redis

    在docker中安装redis 使用命令行安装redis 下载并解压 wget http://download.redis.io/releases/redis-3.2.6.tar.gz tar -xv ...

  4. [视频教程] 使用docker的方式安装redis

    直接使用docker拉取redis的镜像,并且进行端口映射与文件目录共享,这样可以直接在宿主机的端口上就可以进行访问了.其实本质上也是在一个简化版的ubuntu的容器内安装好的redis-server ...

  5. Docker for windows : 安装Redis

    一.拉取Redis镜像 docker pull hub.c..com/library/redis: 二.创建并运行Redis docker run -d -it --name redis d4f259 ...

  6. 二、docker学习笔记——安装redis

    前提:打开powershell(管理员) 1.官网路径 按照官网的做了,但外网无法链接,只好换个做法. 2.docker pull redis 这下载的最新版redis 3.在docker上挂载文件夹 ...

  7. docker 一小时快速入门之利用docker安装Redis

    利用docker方式快捷安装redis 该方式默认下载的最新版本镜像,如需要下载指定版本在redis后面跟:版本号 docker pull redis 查看当前下载redis的镜像 docker im ...

  8. Linux离线安装redis集群

    一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,联网环境安装较为简单,这里只说脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网,服务 ...

  9. Docker 安装redis(四)

    Docker 安装redis 1.搜索docker镜像(可以看到搜索的结果,这个结果是按照一定的星级评价规则排序的) docker search redis 2.拉取docker的mysql镜像(如果 ...

随机推荐

  1. tp5获取当前域名

    //头部引入 use think\Request; //获取当前域名 $request = Request::instance(); $domain = $request->domain();

  2. jq判断input 复选框有没有选

    选中了返回true ,没选中返回false$("input[type='checkbox']").is(':checked'):

  3. metasploit数据库使用学习

    metasploit为了方便,自动将当前工作区的内容放入数据库 首先就是工作区 -a 增加工作区,-d删除工作区 不同工作区的内容会分开储存到数据库 default工作区 test工作区 db_imp ...

  4. 如何使用Camtasia进行电脑录制屏幕

    在现在的网络互联网时代,越来越多的人走上了自媒体的道路.有些自媒体人会自己在网络上录制精彩视频,也有一些人会将精彩.热门的电影剪辑出来再加上自己给它的配音,做成大家喜欢看的电影剪辑片段.相信不管大家是 ...

  5. css3系列之linear-gradient() repeating-linear-gradient() 和 radial-gradient() repeating-radial-gradient()

    linear-gradient()  (线性渐变) repeating-linear-gradient()   (重复的线性渐变) radial-gradient()  (镜像渐变) repeatin ...

  6. Thread.start() ,它是怎么让线程启动的呢?

    作者:小傅哥 博客:https://bugstack.cn Github:https://github.com/fuzhengwei/CodeGuide/wiki 沉淀.分享.成长,让自己和他人都能有 ...

  7. js控制某个div在页面加载完成5秒后隐藏

    <div id="k">测试</div><script>setTimeout("document.getElementById('k' ...

  8. P3619 魔法

    考虑两个任务 \(1\) 和 \(2\),当前时间为 \(T\),两个任务都要完成. 先完成任务 \(1\) 的条件是 \(T>t_1\) 且 \(T+b_1>t_2\),先完成任务 \( ...

  9. C语言是如何诞生的?地位怎样?未来发展趋势?

      C语言的历史 C语言的原型是A语言(ALGOL 60语言). 1963年,剑桥大学将ALGOL 60语言发展成为CPL(Combined Programming Language)语言. 1967 ...

  10. [题解] 洛谷 P3393 逃离僵尸岛

    题目TP门 很明显是一个最短路,但是如何建图才是关键. 对于每一个不可遍历到的点,可以向外扩散,找到危险城市. 若是对于每一个这样的城市进行搜索,时间复杂度就为\(O(n^2)\),显然过不了.不妨把 ...