从本章开始我们在Docker下进行spring boot操作redis的实战,先从最简单的redis单机版开始吧;
原文地址:blog.csdn.net/boling_cava…
实战环境
- 本次实战的环境是Ubuntu16,安装的Docker版本是17.03.2-ce;
- 创建文件夹 /usr/local/work/share,后面会用来做共享文件夹;
- 本次实战将创建两个容器,如下表格所示:
| 容器名 | ip | 功能 |
|---|---|---|
| springbootredis_redis_1 | 172.18.0.2 | 单机版redis |
| springbootredis_java_1 | 172.18.0.3 | 运行springboot工程的环境 |
启动容器
通过docker-compose.yml的方式启动上述两个容器,docker-compose.yml的内容如下:
redis:
image: redis:3
ports:
- "6379:6379"
java:
image: bolingcavalry/springbootrun:0.0.1
links:
- redis:redishost
volumes:
- /usr/local/work/share:/usr/Downloads
ports:
- "8080:8080"
tty: true
在此文件所在目录执行命令
docker-compose up -d,即可启动两个容器,再执行
docker ps可以看到容器信息如下:

spring boot工程
准备一个spring boot工程来读写redis,本章我们的目标是快速体验,所以代码的细节先不讨论,jar包我已准备好,以下两个地址均可下载:
1. download.csdn.net/download/bo…
2. github.com/zq2599/demo…
jar包下载下来后,放入本机的 /usr/local/work/share目录,这个目录和容器的 /usr/Downloads是映射关系,所以我们进入容器后可以直接访问这个文件;
部署jar包
- 执行以下命令进入运行springboot容器:
docker exec -it springbootredis_java_1 /bin/bash
- 进入 /usr/Downloads目录,可以看到文件:redistempletedemo-0.0.1-SNAPSHOT.jar
- 执行以下命令启动容器:
java -jar redistempletedemo-0.0.1-SNAPSHOT.jar
- 启动成功,信息如下:

验证
我的电脑地址是192.168.119.155,所以在浏览器上输入:http://192.168.119.155:8080/set/name/666666999999
以上地址会在redis中设置一个key/value,key是
name,value是
666666999999,页码提示操作成功,如下图:

输入这个地址可以查看redis中key为”name”的内容:http://192.168.119.155:8080/get/name
页面上展示出redis的内容,如下图:

我们再登上redis容器去检查一下,执行以下命令进入redis容器:
docker exec -it springbootredis_redis_1 /bin/bash
执行以下命令进入redis控制台:
redis-cli
在控制台执行 get name即可看到name对应的值,如下所示:
root@rabbitmq:~# docker exec -it springbootredis_redis_1 /bin/bash
root@6e7f4f77eef9:/data# redis-cli
127.0.0.1:6379> get name
"666666999999"
127.0.0.1:6379>
至此,我们在Docker下简单的体验了springboot工程对redis的读写,接下来的实战,我们将尝试在Docker下搭建redis集群并添加哨兵;