如何在Ubuntu 20.04的Dockerfile中安装指定版本Redis 7.0.5
在Dockerfile中安装指定版本Redis 7.0.5的正确方法
直接使用apt-get install redis会默认安装源内的最新版本,要安装指定的7.0.5版本,需要在安装命令中明确指定版本号。以下是可行的实现步骤:
1. 确保基础镜像支持lsb_release命令
部分轻量基础镜像(如debian:bullseye-slim)默认没有lsb-release包,需要先安装:
RUN apt-get update && apt-get install -y lsb-release && rm -rf /var/lib/apt/lists/*
2. 添加Redis官方源并安装指定版本
修改安装命令,通过redis=7.0.5-*指定版本(通配符匹配该主版本下的修订号):
RUN curl https://packages.redis.io/gpg | apt-key add - \ && echo "deb https://packages.redis.io/deb $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/redis.list \ && apt-get update \ && apt-get install -y redis=7.0.5-* \ && rm -rf /var/lib/apt/lists/*
3. 验证安装版本
可以在Dockerfile中添加验证步骤,确保版本正确:
RUN redis-server --version
完整Dockerfile示例
FROM debian:bullseye # 安装lsb-release(若基础镜像已包含可省略) RUN apt-get update && apt-get install -y lsb-release && rm -rf /var/lib/apt/lists/* # 添加Redis源并安装7.0.5版本 RUN curl https://packages.redis.io/gpg | apt-key add - \ && echo "deb https://packages.redis.io/deb $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/redis.list \ && apt-get update \ && apt-get install -y redis=7.0.5-* \ && rm -rf /var/lib/apt/lists/* # 验证版本 RUN redis-server --version CMD ["redis-server"]
补充说明
如果不确定源内可用的具体版本号,可以先在临时容器中执行apt-cache madison redis命令,查看该源下Redis的所有可用版本,再精准指定。
内容的提问来源于stack exchange,提问作者Koduru Sivakumar
相关产品推荐
相关产品推荐

