【Docker】通过Dockerfile构建Redis镜像

网友投稿 438 2022-10-21

【Docker】通过Dockerfile构建Redis镜像

写在前面

最近,有小伙伴问我:他们公司想将现有产品微服务化,部署到Docker容器中,为了部署方便,希望将现有的基础服务,例如,Redis这些基础服务,打包到Docker容器中,而不直接使用Docker镜像库有已有的Redis,这就节省了他们公司再次配置基础服务的时间。问我能不能将现有的Redis打包到Docker容器中。经过我一系列的操作,满足了他们的需求。接下来,我就将如何通过Dockerfile构建Redis镜像分享给大家!

编写redis_install.sh脚本

编写redis编译安装shell脚本redis_install.sh (最后两行的意思是,第69行匹配127.0.0.1更换成0.0.0.0;第88行匹配protected-mode yes更换为protected-mode no),这里,我以redis 4.0.9为例。

#!/bin/bashyum install -y gcc gcc-c++ make openssl openssl-develcd /home/redis-4.0.9make && make PREFIX=/usr/local/redis installmkdir -p /usr/local/redis/conf/cp /home/redis-4.0.9/redis.conf /usr/local/redis/conf/sed -i '69s/127.0.0.1/0.0.0.0/' /usr/local/redis/conf/redis.confsed -i '88s/protected-mode yes/protected-mode no/' /usr/local/redis/conf/redis.conf

编写Dockerfile

FROM centos:7ADD redis-4.0.9.tar.gz /homeCOPY redis_install.sh /homeRUN sh /home/redis_install.shENTRYPOINT /usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf

测试Redis

启动容器 docker run -itd -p 6380:6379 mycentos:redis #6380为宿主机端口,6379为容器端口进入容器 docker exec -it 镜像id /bin/bash宿主机连接redis /usr/local/redis/bin/redis-cli -p 6380验证:可以在宿主机set name xxx,然后在容器内get name 测试

​好了,今天就到这儿吧,我是冰河,我们下期见!!​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Docker学习系列从零开始之centos6.5底下安装docker【一】
下一篇:Mybatis resultType返回结果为null的问题排查方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~