docker拉取redis镜像
默认拉取最新版
docker pull redis
docker启动redis容器
docker run -p 6379:6379 -v /home/wen/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf --name mobileshop_redis -d redis redis-server /usr/local/etc/redis/redis.conf
命令解析:
–name mobileshop_redis : 指定容器名称
-p 6379:6379 : 指定端口映射,默认redis启动的是6379,至于外部端口不冲突就行。
-v /home/wen/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf : 将主机中当前目录下的redis.conf配置文件映射。
--redis-server --appendonly yes :在容器执行redis-server启动命令,并打开redis持久化配置
远程连接测试成功
引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
application.yml配置
spring:
redis:
host: 主机ip
database: 0
port: 6379
# redis连接池配置
jedis:
pool:
max-active: 200
min-idle: 20
max-wait: 3000ms
RedisTemplate常用方法
小案例
@Autowired
private RedisTemplate redisTemplate;
/**
* 发送邮箱验证码
* @param email
* @return
*/
@ApiOperation(value="发送邮箱验证码")
@PostMapping("/sendAuthCodeEmail")
public String sendAuthCodeEmail(@ApiParam(name = "email", value = "邮箱", required = true) @RequestParam("email") String email){
String authCode = new EmailUtil().getAuthCode(); //生成随机验证码
redisTemplate.opsForValue().set(email,authCode,60, TimeUnit.SECONDS); //将验证码存入缓存,60秒失效
try {
new EmailUtil().sendAuthCodeEmail(email,authCode);
} catch (Exception e) {
e.printStackTrace();
return "Fail";
}
return "Success";
}
接着我redis乱码了!!