docker配置redis镜像.md 3.6 KB

使用 docekt 配置 redis

使用 Dockerfile 进行安装管理
基础系统环境 ubuntu20.04
可以使用编译安装以及官方镜像安装的方式来进行安装
docker官方文档

编译安装

0. 创造docker工作目录

1. 获取 redis 编译安装文件

前往redis官网去选择下载对应的redis
这里使用的redis版本为redis-7.0.7
下载完成后将redis放置于服务器的指定目录下

2. redis.con配置文件准备

获取redis运行必备的配置文件
这里使用github上的redis.confg

3. 创建并Dockerfile文件

vim Dockerfile

vim中输入i进入编辑模式,然后开始编辑输入
退出编辑则是按esc键,然后再输入:wq进行保存
如果是不保存直接退出则是输入:q,输入:q!强制不保存退出

4. 编辑Dockerfile

# 基础镜像
FROM ubuntu:20.04
MAINTAINER kindring
VOLUME "/data"
WORKDIR /root
# 声明暴露的端口,与 redis.conf 中相似,可以忽略,不会自动开放
EXPOSE 6379
# 创建redis目录,以及安装redis编译环境 使用 && 符号连接命令,以防止镜像膨胀过大
RUN mkdir redis \
&& apt-get update \
&& apt-get install software-properties-common -y \
&& apt-get install gcc -y \
&& apt-get install --reinstall make
# 把解压好的 redis 文件 copy 进 docker 中,并且切换工作目录
COPY ./redis-7.0.7 ./redis-7.0.7
# 如果没有提前解压好对应的文件的话,可以在使用
RUN tar xvzf redis-7.0.7.tar.gz
WORKDIR ./redis-7.0.7
# 开始编译并安装 redis
RUN make \
&& make install
COPY ./redis.conf /etc/redis/redis.conf
CMD redis-server /etc/redis/redis.conf

5. 构建 redisdocker 镜像

redis_me 镜像名称
latest 版本标识号
在版本号后面需要接一个点 .

sudo docker build -t redis_me:latest .

6. 运行镜像

运行命令需要使用sudo来授权
-p 参数来指定端口 服务器监听的端口:docker内软件的端口
-v 授权给 docker 可以访问的目录 服务实际目录:docker内的目录
--name 分配一个名称给表格
-it 在没有连接的情况下也保持标准输入打开状态,提供一个伪 bash 的体验

部分参数表格

选项 选项简写 说明
–detach -d 在后台运行容器,并且打印容器id。
–interactive -i 即使没有连接,也要保持标准输入保持打开状态,一般与 -t 连用。
–tty -t 分配一个伪tty,一般与 -i 连用

运行 docker

# 在运行后可以通过 name test_redis 来进行管理此镜像
sudo docker run -p 6890:6379 -v /data/redis:/data/redis -v /data/redis/logs:/data/redis/logs --name test_redis -it redis_me:latest

7. 测试镜像使用


通过redis官方镜像安装

1. 编辑Dockerfile

# 设置基础镜像为redis
FROM redis:latest

# 设置工作目录
WORKDIR /app

# 复制redis.conf配置文件到 工作目录中
COPY redis.conf /app

# 启动命令,并设置使用刚刚复制进来的配置文件
CMD ["redis-server", "/app/redis.conf"]

2. 准备redis.conf

3. 构建镜像

参考编译安装的部分

4. 运行镜像

参考编译安装的部分

docker run -p 6379:6379 myredis

5. 测试

redis-cli -h <hostname> -p 6379
127.0.0.1:6379> auth 12345678
127.0.0.1:6379>