我开始使用docker,我正在尝试使用Phusion的baseimage“简化”一个简单的redis服务。 On its website,baseimage说:
您可以添加其他守护程序(例如您自己的应用程序)到图像 创建runit条目。
很好,所以我首先用cmd / bin / bash交互式地启动了这个图像。我通过apt-get安装了redis-server。我在/ etc / service中创建了一个“redis-server”目录,并创建了一个如下所示的运行文件:
#!/bin/sh
exec /usr/bin/redis-server /etc/redis/redis.conf >> /var/log/redis.log 2>&1
我确保daemonize
文件中的redis.conf
设置为“否”
我提交了我的更改,然后使用我新创建的图片,我启动了以下内容:
docker run -p 6379:6379 <MY_IMAGE>
我看到了这个输出:
*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 98
然后我跑
boot2docker ip
它给了我一个IP地址。但是当我从我的手机上跑步时,
redis-cli -h <IP>
无法连接。与
相同telnet <IP> 6379
我运行了一个docker ps并看到以下内容:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c7bd2dXXXXXX myuser/redis:latest "/sbin/my_init" 11 hours ago Up 2 minutes 0.0.0.0:6379->6379/tcp random_name
当尝试使用phusion的baseimage尝试将简单的redis服务停靠时,有人可以建议我做错了什么吗?
答案 0 :(得分:0)
因为我没有评论
bind 127.0.0.1
redis.conf
文件中的参数。
现在,它有效!