🌴使用Dockerfile安装redis镜像
- 🕊️1. 安装centos7镜像和redis依赖包
- 🍵步骤一:查找Docker Hub 上的centos镜像
- 🍵步骤二:拉取官方的镜像,标签为7
- 🍵步骤三:查看本地镜像列表REPOSITORY为centos标签为7的镜像
- 🍵步骤四:使用镜像centos:7以交互模式启动一个容器,在容器内执行/bin/bash命令
- 🍵步骤五:容器内安装Redis依赖包
- 🍵步骤六:输入exit,退出容器,输入docker ps -a查看容器id
- 🍵步骤七:根据容器ID创建一个新的镜像作为Redis的基础镜像
- 🍵步骤八:查看新构建的基础镜像
- 🕊️2. Docker根据基础镜像安装Redis
- 🍵步骤一:创建Redis目录
- 🍵步骤二:进入创建的Redis目录,创建Dockerfile.
- 🍵步骤三:输入i,编辑如下内容到Dockerfile中
- 🍵步骤四:完成后按“esc”键,然后输入:wq保存退出文档
- 🍵步骤五:通过Dockerfile创建Redis镜像
- 🍵步骤六:查看创建的Redis镜像
- 🕊️3. 验证Redis镜像
- 🍵步骤一:运行容器,执行redis-server
- 🍵步骤二:查看容器启动状态,记录容器ID,下一步中会通过容器ID进入容器
- 🍵步骤三:执行redis-cli命令连接到刚启动的容器
- 🍵步骤四:使用redis容器,分别敲入以下命令:
🕊️1. 安装centos7镜像和redis依赖包
🍵步骤一:查找Docker Hub 上的centos镜像
docker search centos
🍵步骤二:拉取官方的镜像,标签为7
docker pull centos:7
🍵步骤三:查看本地镜像列表REPOSITORY为centos标签为7的镜像
docker images centos:7
🍵步骤四:使用镜像centos:7以交互模式启动一个容器,在容器内执行/bin/bash命令
docker run -it centos:7 /bin/bash
此时进入容器内部,图中“705ccba62a5
”为容器ID
🍵步骤五:容器内安装Redis依赖包
yum -y install wget gcc make libgcc gcc-c++ glibc-devel
🍵步骤六:输入exit,退出容器,输入docker ps -a查看容器id
exit
docker ps -a
由此可知,容器的ID为3b898a823d80
🍵步骤七:根据容器ID创建一个新的镜像作为Redis的基础镜像
docker commit -a "huawei.com" -m "redis images" f42cb9a0bf6f(此处为容器ID注意替换为自己的容器ID) centos:7
其中:
huawei.com:提交的镜像作者
3b898a823d80:容器ID
redis images:提交时的说明文字
centos:7:新生成的镜像名称
🍵步骤八:查看新构建的基础镜像
docker images
由此可知,新镜像centos:7构建成功。
🕊️2. Docker根据基础镜像安装Redis
🍵步骤一:创建Redis目录
mkdir -p ~/redis/data
数据卷data目录将映射为redis容器配置的/data目录,作为redis数据持久化的存储目录。
🍵步骤二:进入创建的Redis目录,创建Dockerfile.
cd ~/redis
vi Dockerfile
🍵步骤三:输入i,编辑如下内容到Dockerfile中
FROM centos:7
WORKDIR /home
RUN wget https://repo.huaweicloud.com/redis/redis-4.0.3.tar.gz && \
tar -xvzf redis-4.0.3.tar.gz && \
mv redis-4.0.3/ redis && \
rm -f redis-4.0.3.tar.gz
WORKDIR /home/redis
RUN make && make install
Volume /data
EXPOSE 6379
CMD ["redis-server"]
🍵步骤四:完成后按“esc”键,然后输入:wq保存退出文档
🍵步骤五:通过Dockerfile创建Redis镜像
docker build -t centos_redis:4.0.3 .
🍵步骤六:查看创建的Redis镜像
docker images
说明Redis镜像创建成功,镜像名称:centos_redis,标签4.03,镜像ID ec392ba2c006。
🕊️3. 验证Redis镜像
🍵步骤一:运行容器,执行redis-server
docker run -p 6379:6379 -v /root/redis/data:/data -d centos_redis:4.0.3 redis-server --appendonly yes
命令说明:
-p 6379:6379 : 将容器的6379端口映射到主机的6379端口。
-v $PWD/data:/data : 将主机中当前目录下的data挂载到容器的/data。
redis-server --appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置。
🍵步骤二:查看容器启动状态,记录容器ID,下一步中会通过容器ID进入容器
docker ps
🍵步骤三:执行redis-cli命令连接到刚启动的容器
执行redis-cli命令连接到刚启动的容器,并敲入info命令(其中530078068cb2为上一步中查看的容器的ID)
docker exec -it 530078068cb2(此处为容器ID注意替换为自己的容器ID) redis-cli
info
说明连接redis-server成功。
🍵步骤四:使用redis容器,分别敲入以下命令:
ping
set runkey "hello redis"
get runkey
说明:
ping返回PONG说明检测到 redis 服务已经启动。
set runkey “hello redis”:设置runkey值为"hello redis",返回OK,说明设置成功。
get runkey:获取runkey的值,返回"hello redis"说明与设置的相匹配