RedisLabs/Redis容器无法以root用户操作iptables的问题排查
在redislabs/redis容器中操作iptables权限不足,无法创建Redis数据库
问题背景
为解决创建Redis数据库时的节点分配失败问题,我需要在redislabs/redis Docker容器内禁用防火墙,但遇到以下障碍:
- 容器默认用户为
redislabs,未找到该用户的登录密码 - 切换到root用户后,仍无足够权限操作iptables
已执行的操作
- 创建容器:
docker run -d --cap-add sys_resource -h re-node1 --name re-node1 -p 18443:8443 -p 19443:9443 -p 14000-14005:12000-12005 -p 18070:8070 redislabs/redis:latest
- 启动集群:
docker exec -it --privileged re-node1 "/opt/redislabs/bin/rladmin" cluster create name re-cluster.local username demo@redis.com password redislabs
- 检查集群状态:
docker exec -it re-node1 bash -c "/opt/redislabs/bin/rladmin info cluster"
- 尝试以root身份操作iptables:
docker exec -u 0 -it re-node1 bash root@re-node1:/opt# iptables -L
报错信息
执行iptables -L时出现以下错误:
iptables v1.6.1: can't initialize iptables table `filter': Permission denied (you must be root) Perhaps iptables or your kernel needs to be upgraded.
内容的提问来源于stack exchange,提问作者Ronan Vargas
相关产品推荐
相关产品推荐

