1.docker 部署 mysql:latest
直接执行下面命令,docker会自动下载latest
(-v挂载目录换自己的)
(用户root,密码1234)
docker run \
--name mysql \
-d \
-p 3306:3306 \
--restart unless-stopped \
-v /my/docker/mysql/log:/var/log/mysql \
-v /my/docker/mysql/data:/var/lib/mysql \
-v /my/docker/mysql/conf:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=1234 \
mysql
2.docker部署redis:latest
redis.conf按自己的需求配置(redis.conf里面只写bind 0.0.0.0也行,按自己需求来,bind 0.0.0.0表示任何一个IP地址都可以访问到Redis服务)
# 网络设置
bind 127.0.0.1 # 绑定Redis监听的IP地址,默认为本地回环地址
protected-mode yes # 开启保护模式,只允许本地访问,除非设置了密码
port 6379 # 设置Redis监听的端口号,默认为6379
tcp-backlog 511 # TCP连接队列的最大长度,用于处理大量并发连接
timeout 0 # 客户端空闲超时时间,设置为0表示永不超时
tcp-keepalive 300 # TCP keepalive探测间隔,单位为秒
# 持久化策略
save 900 1 # 在900秒内有至少1个key发生变化时,执行一次快照保存
save 300 10 # 在300秒内有至少10个key发生变化时,执行一次快照保存
save 60 10000 # 在60秒内有至少10000个key发生变化时,执行一次快照保存
rdbcompression yes # 启用RDB快照压缩功能,以减少磁盘空间占用
rdbchecksum yes # 启用RDB快照校验和功能,增强数据的完整性
# 安全配置
requirepass your_password # 设置客户端连接时的密码认证,替换your_password为实际密码
masterauth your_password # 主从复制时,从节点需要提供与主节点相同的密码认证
# 内存管理
maxmemory 1gb # 设置Redis最大可用内存量,超过此限制将触发淘汰策略
maxmemory-policy allkeys-lru # 当内存达到上限时,使用LRU算法淘汰键值对
# 高可用与集群配置
replicaof localhost 6379 # 设置当前节点为主节点的从节点,连接到指定的主节点
appendonly yes # 开启AOF持久化模式,将写操作追加到AOF文件中
appendfsync everysec # AOF文件同步的频率,可选值为always、everysec、no
docker run --restart=always \
-p 6379:6379 \
--name redis \
-v /my/docker/redis/redis.conf:/etc/redis/redis.conf \
-v /my/docker/redis/data:/data \
-d redis redis-server /etc/redis/redis.conf