0
我在hetzner.de上有一個服務器,大約有16個公有IPv4地址。運行容器後,Docker會自動爲主機添加IP地址
現在我正在運行的容器是這樣的:
sudo docker run -d --name test6 -it -p 5.1.2.3:80:80 sunebeck/apache-php
這將最初產生這個錯誤:
Error starting userland proxy: listen tcp 5.1.2.3:80: bind: cannot assign requested address.
這是通過手動主機上添加IP地址固定:
ip addr add 5.1.2.3 dev eth0
之後它按預期工作,服務在5.1.2.3上顯示爲端口80。然而,手動管理這件事有點麻煩。
Docker會根據需要自動添加/刪除主機的IP地址嗎?
我想這樣做,但我也不希望物理服務器聲稱IP地址,如果另一個主機可能是在給定時刻使用它的人。 – sune
但我當然可以通過製作一個包裝腳本來解決它。或者可以使用一些現有的服務來'安排'更大的安裝。 – sune
正確;我會建議使用像Kubernetes這樣的編排層可能會更好地管理這一點。我曾經寫過一個工具(稱爲[kiwi](https://github.com/larsks/kiwi)),它完全符合你的要求,但它從來沒有非常強大,並且不適用於現代版本的Kubernetes。 – larsks