【Docker】解决创建Redis容器没有conf配置文件

简介: 【Docker】解决创建Redis容器没有conf配置文件

序言

这篇文章没有什么知识点,只是为了新伙伴少踩点坑

1. 问题重现

  1. 创建容器

image.png

2. 解读参数


-d: 后台运行容器,并返回容器ID;


-i: 以交互模式运行容器,通常与 -t 同时使用;


-p: 端口映射,格式为:主机(宿主)端口:容器端口


-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;


--ip: 为容器制定一个固定的ip


--net: 指定网络模式


3. 进入容器查看redis.conf文件


发现是并没有redis.conf文件的,那么这个时候就是新手踩坑阶段了,因为没有系统的学习docker所以会花费很多时间


image.png


2. 解决问题


没有配置文件这件事呢!那是因为redis容器里边的配置文件是需要在创建容器时映射进来的


那么就需要删除我们之前创建好的容器,在删除前需要先停止容器后才可以删除


停止容器:docker container stop redis-test


删除容器:docker container rm redis-test


image.png


1. 开始重新创建redis容器


docker run -itd  --name  redis-slave  -v /usr/local/redis/redis.conf:/etc/redis.conf -v /root/usr/local/redis/data:/data  --net mynetwork  -p 6381:6379  --ip 172.10.0.3  redis


参数解释:


-v /usr/local/redis/redis.conf:/etc/redis.conf:映射配置文件


-v /root/usr/local/redis/data:/data:映射数据目录


那么这个时候就有redis配置文件了


image.png


搭建同意的挂载外部配置


上边是在我宿主机有redis的情况下的,那么下来说宿主机没有redis的情况


这里说的映射其实就是挂载外部配置和数据安装


1. 创建docker统一的外部配置文件


mkdir -p docker/redis/{conf,data}


2. 在conf目录创建redis.conf的配置文件


touch /docker/redis/conf/redis.conf


3. redis.conf文件的内容需要自行去下载,网上很多


4. 创建启动容器,加载配置文件并持久化数据


docker run -d --privileged=true -p 6379:6379 -v /docker/redis/conf/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data --name redis-test redis redis-server /etc/redis/redis.conf --appendonly yes


参数说明:


--privileged=true:容器内的root拥有真正root权限,否则容器内root只是外部普通用户权限


-v /docker/redis/conf/redis.conf:/etc/redis/redis.conf:映射配置文件


-v /docker/redis/data:/data:映射数据目录


redis-server /etc/redis/redis.conf:指定配置文件启动redis-server进程


--appendonly yes:开启数据持久化


这里边还有一些概念新手可能会很模糊,后边会进行详解,先知道这么用就好了,深夜了,大家晚安!


相关文章
|
10月前
|
Kubernetes Devops Docker
Kubernetes 和 Docker Swarm:现代 DevOps 的理想容器编排工具
本指南深入解析 Kubernetes 与 Docker Swarm 两大主流容器编排工具,涵盖安装、架构、网络、监控等核心维度,助您根据团队能力与业务需求精准选型,把握云原生时代的技术主动权。
859 115
|
9月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
829 52
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
9月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
2758 8
|
9月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
918 6
|
9月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
846 6
|
9月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
1205 4
|
10月前
|
存储 Kubernetes 持续交付
为什么Docker容器化改变了开发与部署?
为什么Docker容器化改变了开发与部署?