大家好:
我在虚拟机中安装了一台redis
,并运行了起来。虚拟机的地址是 192.168.56.101
.
之后我在我的真机上写了一个clojure
的程序,使用了ptaoussanis/carmine
来链接虚拟机中的 redis
.
代码如下:
(require '[taoensso.carmine :as car :refer (wcar)])
(def test-redis {:pool {} :spec {:host "192.168.56.101" :port 6379}})
(wcar test-redis (car/lpop "logstash-testlog")) ;logstash-testlog 是 redis 中的 key
但是提示
NoRouteToHostException 没有到主机的路由 java.net.PlainSocketImpl.socketConnect (PlainSocketImpl.java:-2)
呵呵,原来时虚拟机的
iptables
没有关~这看起来与 clojure 没什么关系。请试试看 ping 你的虚拟机,应该是无法联通的。在刚开始尝试新东西的时候可能最好不要多种一起上,试试看直接装 redis 在你的主机上,不要通过虚拟机。