前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >云原生——使用docker构建一个redis镜像

云原生——使用docker构建一个redis镜像

作者头像
小诸葛
发布2024-06-05 09:14:45
1310
发布2024-06-05 09:14:45
举报
文章被收录于专栏:方法论方法论

本文主要讲解如何基于redis官方镜像构建一个redis镜像,构建后的镜像支持自定义redis配置文件,并在镜像中加入了curl和bash基础命令。最后,还会简要讲解使用该镜像。

Dockerfile:

代码语言:javascript
复制
FROM redis:7.0.15-alpine3.20
# install tools
RUN apk add curl --no-cache &&\
    apk add bash --no-cache 
 
COPY redis.conf /usr/local/etc/redis/redis.conf
 
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf"]

redis.conf:

代码语言:javascript
复制
# Redis 配置文件示例
 
################################## INCLUDES ###################################
 
# 如果你的 Redis 实例使用 include 配置来引入其他文件,请确保这些文件存在
# include /path/to/local.conf
# include /path/to/other.conf
 
################################## MODULES ####################################
 
# 如果你在编译时加载了模块,请在这里引入它们
 
################################## NETWORK ####################################
 
# 绑定的 IP 地址
bind 127.0.0.1
 
# 端口号
port 6379
 
# TCP-backlog
tcp-backlog 511
 
# 网络超时时间(秒)
timeout 0
 
# 日志级别
loglevel notice
 
# 通信协议(tcp 或者 unix)
# 默认值为 tcp
# unixsocket /tmp/redis.sock
# unixsocketperm 700
 
################################# GENERAL #####################################
 
# 密码认证
# requirepass foobared
 
# 服务器标识(用于统计)
# servername redis_server_1
 
# 守护进程模式
daemonize no
 
# 数据目录
dir /var/lib/redis
 
# RDB 文件名
dbfilename dump.rdb
 
# 持久化策略
save 900 1
save 300 10
save 60 10000
 
# 是否开启 AOF
appendonly yes
 
# AOF 文件名
appendfilename "appendonly.aof"
 
# AOF 同步策略
appendfsync everysec
 
# AOF 自动重写缩减
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
 
# 是否开启集群模式
cluster-enabled no
 
# 慢查询日志阈值(单位微秒)
slowlog-log-slower-than 10000
 
# 客户端输出缓冲区长度
client-output-buffer-limit normal 0 0 0
 
# 设置最大客户端连接数
maxclients 10000
 
# 设置允许的最大内存使用量
maxmemory 4gb
 
# 设置内存使用达到最大时的处理策略
maxmemory-policy volatile-lru
 
# 设置是否开启了压缩
rdbcompression yes
 
# 设置是否开启了哨兵
sentinel false

构建镜像:

代码语言:javascript
复制
docker build -t redis:v7.0.15 . -f Dockerfile 

运行:

代码语言:javascript
复制
docker run --name myredis7  -p 6379:6379 -d redis:v7.0.15 

查看容器:

代码语言:javascript
复制
docker ps |grep myredis

进入容器:

代码语言:javascript
复制
 docker exec -it b8c8ba64955b bash

连接并使用redis:

代码语言:javascript
复制
redis-cli -h 127.0.0.1 -p 6379

redis官方镜像地址:

https://hub.docker.com/_/redis

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小诸葛的博客 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档