Docker 如何将exec对接到IBM bluemix容器

Docker 如何将exec对接到IBM bluemix容器,docker,containers,ibm-cloud,Docker,Containers,Ibm Cloud,我刚刚开始使用IBM容器。现在,我想将docker exec添加到容器中,但我发现这不受支持() 基本上,我已经将源代码放在容器中,现在想安装它并更新一些配置,例如:更新提供的ip地址 我可以从已安装的docker容器创建一个映像,并将其推送到bluemix,但仍然需要更改一些配置 请给我建议其他方法来实现这一点。支持,包含卷,可以考虑。 这样,您可以从主机修改文件,容器将通过装入的卷看到修改。您可以通过ssh连接到IBM容器并根据需要更新文件。 要将ssh传输到IBM容器,必须使用--ssh选

我刚刚开始使用IBM容器。现在,我想将docker exec添加到容器中,但我发现这不受支持()

基本上,我已经将源代码放在容器中,现在想安装它并更新一些配置,例如:更新提供的ip地址

我可以从已安装的docker容器创建一个映像,并将其推送到bluemix,但仍然需要更改一些配置

请给我建议其他方法来实现这一点。

支持,包含卷,可以考虑。


这样,您可以从主机修改文件,容器将通过装入的卷看到修改。

您可以通过ssh连接到IBM容器并根据需要更新文件。 要将ssh传输到IBM容器,必须使用
--ssh
选项传递ssh公钥。 按照以下步骤创建ssh公钥/私钥对并运行IBM容器:

# ice ip bind <ip-address> my-container
1) 创建私钥/公钥对

# ssh-keygen -t rsa -f cloud.key
这将创建两个文件:
cloud.key
cloud.key.pub

2) 运行传递公钥的IBM容器,下面的示例运行默认ibmnode映像(执行a
cat cloud.key.pub
并粘贴为ssh参数):

3) 将公共IP地址绑定到IBM容器:

# ice ip bind <ip-address> my-container
#ice ip绑定我的容器
4) 运行ssh命令登录到传递私钥的IBM容器

# ssh -i cloud.key root@<ip-address>
#ssh-i cloud.key root@

亲爱的downvoter,如果您能给我一些意见,我将不胜感激。使用卷我可以更新配置,但如何使用容器重新启动服务?或者我必须重新启动容器?您可以重新启动容器,或者容器运行的服务将具备监视该配置文件并重新启动自身的必要知识。服务没有那么智能:)。我必须重新启动容器。我可以ssh到容器中吗?@user3275095不要忘记,重新启动容器并不意味着连接到它。在运行的容器中执行命令是通过
docker exec
完成的(这一点不需要ssh)。但是重新启动所有容器意味着
docker stop/kill
,然后
docker rm
,然后
docker run
。我同意exec的观点,但在exec不可用时,我将ssh视为一个选项。不管怎样,我会浏览这些卷。我们有类似的cf命令选项吗?我不确定,因为我在docker的参考中没有看到--ssh选项。我检查了文档,我想我们没有用于cf的文档。我将尝试ice。一个比我更精确的答案+1我可以通过ssh连接到容器:)。谢谢@VonC:既然你批准了这个,我接受这个答案:)。