Docker安装Redis容器详细步骤

Docker安装Redis容器详细步骤

  • 1.参考文件
  • 2.安装步骤
  • 3.遇到问题

有更好的建议,欢迎评论区留言~
有不详细或者不准确的地方,欢迎评论区指正~
有技术群嘛 hahh 可以拉我么 ~

1.参考文件

1. redis官方文档
2.最详细Docker安装Redis (含每一步的图解)
3.Docker安装/使用Redis

2.安装步骤

--  查询redis
docker search redis

-- 拉取镜像(没有版本号,默认lasted最新版本)
docker pull redis

-- 创建需要的文件夹
mkdir -p /data/docker/redis/data

-- 创建需要的文件
touch /data/docker/redis/conf/redis.config
-- 创建容器命令

-- -- 不带密码和日志限制
docker run -p 6379:6379 \
--name redis \
--restart=always \
--privileged=true \
-v /data/docker/redis/data:/data \
-v /data/docker/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

-- -- 带密码和日志限制
docker run  -p 6379:6379 \
--restart=always \
--log-opt max-size=100m \
--log-opt max-file=3 \
--name redis \
-v /data/docker/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /data/docker/redis/data:/data \
-d redis redis-server /etc/redis/redis.conf \
--appendonly yes  \
--requirepass 123456

创建容器命令分析

创建容器命令分析:

--log-opt max-size=100m  : 日志单个文件大小

--log-opt max-file=3 : 日志保留文件的个数

--restart=always : 重启docker时,会自动重启

--privileged=true  : 权限允许

-d redis 后台启动redis

–appendonly yes  :开启redis 持久化

--requirepass 000415 : 设置密码

redis-server /etc/redis/redis.conf  : 让redis服务器读取这个配置文件

-- 查看redis启动状态
docker ps -a |grep redis(容器名)

-- 查看30分钟的日志
docker logs --since 30m  redis(容器名)

-- 进入redis-cli redis是容器名name
docker exec -it redis redis-cli 

-- 可以设置key value
127.0.0.1:6379> set lhh lhh-nice
OK
127.0.0.1:6379> get lhh
"lhh-nice"
127.0.0.1:6379> exit

-- 设置redis持久化 -- AOF(Append Only File) [未设置持久化,重启redis容器,设置的值会清空;]
cd /data/docker/redis/conf/
ls
vim redis.config

-- 进入redis.config文件
1.按'Insert'进行插入操作
2.输入内容'appendonly yes‘
3.'esc'退出操作,':wq'然后回车保存并退出
  
-- 查看redis.config文件内容
cat redis.config

3.遇到问题

Warning: Could not create server TCP listening socket ::1:6379: bind: Cannot assign requested address

redis.conf 文件内   # bind 127.0.0.1 -::1  隐藏 

WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.

参考链接:https://blog.csdn.net/afreon/article/details/118727725
进入/etc/sysctl.conf 文件,设置 ' net.core.somaxconn = 1024 '

WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.

参考链接:	https://www.jb51.net/article/238590.htm
      				https://blog.csdn.net/qq_34556414/article/details/107027841
      				
进入/etc/sysctl.conf 文件,设置 ' vm.overcommit_memory = 1  '

你可能感兴趣的:(LINUX,redis,docker)