问题
项目需要在内网(不联网)进行部署我们的后端服务,框架涉及使用redis做成缓存,由于内网的系统为centos7,我们在部署的时候,遇到了编译redis6缺少环境的文件问题,后来把环境包导入内网环境后,还是存在各种依赖的缺失问题。使用了之前其他服务器部署的解决方案,虽然能解决掉服务的部署问题,但是却无法打开redis-cli,于是便使用了docker部署redis镜像,一劳永逸解决环境的问题
镜像准备
由于是内网环境,所以需要从外网导入一个redis的镜像,这里在mac下载redis最新的镜像,然后导出
安装镜像
docker search redis 寻找镜像
docker pull redis:latest 安装最新的镜像
docker images 查看镜像
导出镜像
docker save 08502081bff6> /usr/local/redis.tar
08502081bff6指的是 镜像的id
服务部署
然后将导入的tar压缩包上传至内网的服务器上
导入
docker load < /usr/local/redis/redis.tar
使用 docker images
发现镜像名称为空,需要修改进行的名称
修改镜像名称
docker tag eb40dcf64078 redis:latest
启动服务
docker run --name redis -p 6380:6379 redis-server
docker ps 查看运行的服务
或者使用docker ps -a
查看全部的部署的镜像
扩展
设置密码
由于是内网环境,一开始并没有设置密码,导致被查出弱口令的问题,所以,后面对redis设置了密码
1.进入redis的容器 docker exec -it 容器ID bash
2.进入redis目录 /usr/local/bin
3.运行命令:redis-cli
4.查看现有的redis密码:config get requirepass
5.设置redis密码config set requirepass ****(****为你要设置的密码)