docker啓動redis端口映射錯誤問題解決

https://www.cnblogs.com/wangxiayun/p/10221097.html

今天使用docker安裝redis,使用的時候出現了一些問題。第一次安裝好後,在虛擬機後臺啓動了redis,然後在連接虛擬機的redis的時候怎麼也連不上。出現這種情況我第一反應是防火牆沒有開啓所以我執行查看了一下防火牆的狀態。

systemctl status firewalld
然後發現沒有開啓防火牆,於是我又開啓了防火牆。

systemctl start firewalld
然而連接還是有問題,一直連接不上。然後我查看了一下doker的進程狀態,發現redis是運行着的,但是端口映射沒有做映射(使用doker啓動的應用一定要做端口映射,否則外部無法訪問該應用端口)。

docker ps
於是我又重新刪除該容器,重新啓動了一個容器,並做了端口映射。

docker run -p 6379:6379 --name myredis  -d registry.docker-cn.com/library/redis

但是問題來了,容器是創建了,然而缺一直啓動不起來,啓動容器會報下列問題。

docker: Error response from daemon: driver failed programming external connectivity on endpoint myredis (e189179ed97e6d940fe64c0c7c822beb430e5489c51c28d872aeabe95f1c60d0): (iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 6379 -j DNAT --to-destination 172.17.0.2:6379 ! -i docker0: iptables: No chain/target/match by that name.
(exit status 1)).

目前的解決方式是關閉docker,然後重新啓動,再用docker啓動redis重新 映射端口,redis容器終於正確啓動並且能夠被外部所訪問了。

systemctl stop docker
systemctl start docker
docker run -p 6379:6379 --name myredis  -d registry.docker-cn.com/library/redis

docker啓動redis端口映射錯誤問題解決

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章