大家好:
我在虛擬機器中安裝了一台redis
,並且運作了起來。虛擬機器的位址是192.168.56.101
.
之後我在我的真機上寫了一個clojure
的程序,使用了ptaoussanis/carmine code> 來連結虛擬機器中的
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 在你的主機上,不要通過虛擬機。