问题描述
大家好:
我在虚拟机中安装了一台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)
问题解答
回答1:呵呵,原来时虚拟机的 iptables 没有关~
回答2:这看起来与 clojure 没什么关系。请试试看 ping 你的虚拟机,应该是无法联通的。在刚开始尝试新东西的时候可能最好不要多种一起上,试试看直接装 redis 在你的主机上,不要通过虚拟机。