我想将代码更新为Bluemix容器。如下所示,ice --cloud ps
命令显示容器处于Running状态而不是Building状态。
为了这篇文章,我将ice --cloud ps命令的结果放在多行上。
$ ice --cloud ps
Container Id Name Group Image Created
1a234bc5-def6-7g xyzContainer Aug 31 12:00
State Private IP Public IP
Running 111.111.1.1 222.222.2.2
Ports
['80/tcp', '443/tcp', '1883/tcp', '4883/tcp', '8080/tcp'
我运行了以下命令来构建,标记和推送:
ice --cloud build -t myImage .
ice –-local tag myImage registry.ng.bluemix.net/myContainer/myImage
ice –-local push registry.ng.bluemix.net/myContainer/myImage
在这种情况下,我不想更改公共IP地址/设置,我想避免每次更改时删除/创建容器。我想用最新版本更新容器。如何在旧容器上运行新图像?
答案 0 :(得分:2)
您需要重新启动正在运行的容器。按下新图像时不会自动触发重启。
您可以启动新容器,将现有IP地址重新绑定到新容器,等待更改发生,然后取下旧容器。 如果您在Bluemix部署程序中使用IBM Containers,则可以为您完成此过程。
注意:IP重新绑定过程可能需要花费尽可能多的时间来使IP地址首次获得连接。
如果您要手动部署,请根据问题中的示例完成以下步骤:
ice ip unbind 222.222.2.2 1a234bc5-def6-7g
ice ip bind 222.222.2.2 abcd12345-123-123
(其中“abcd12345-123-123”是新容器的ID。)注意:如果您通过用户界面并在新容器上创建IP,您需要先取消绑定。