我剛剛開始使用IBM容器。現在,我想將docker exec添加到容器,但是我發現不支持(link)。如何將docker exec移植到IBM Bluemix容器上
基本上,我把我的源代碼放在容器中,現在想安裝它並更新一些配置,例如:更新提供的IP地址。
我可以從安裝的docker容器創建一個映像,並將其推送到bluemix,但仍然需要更改一些配置。
請給我建議實現此目的的替代方法。
我剛剛開始使用IBM容器。現在,我想將docker exec添加到容器,但是我發現不支持(link)。如何將docker exec移植到IBM Bluemix容器上
基本上,我把我的源代碼放在容器中,現在想安裝它並更新一些配置,例如:更新提供的IP地址。
我可以從安裝的docker容器創建一個映像,並將其推送到bluemix,但仍然需要更改一些配置。
請給我建議實現此目的的替代方法。
您可以根據需要ssh訪問IBM Container並更新文件。 要ssh到IBM Container,您必須使用--ssh
選項傳遞ssh公鑰。 按照下面的步驟來創建一個SSH公鑰/私鑰對,運行IBM容器:
1)創建一個公/私鑰對
# ssh-keygen -t rsa -f cloud.key
這將創建2個文件:cloud.key
和cloud.key.pub
2)運行IBM容器經過公共密鑰,該樣品下方運行默認ibmnode圖像(做cat cloud.key.pub
並粘貼作爲SSH參數):
# ice run --name my-container --memory 512 --publish 8000 --ssh "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCrpMSm1U0YCvCfFZDOSqKDNZT0fd9TOWQh/jZPFWJu3BTrZuxDM0Mc5Cv6Lw0yYC5ZdqFsn4Rp4ovCkEY3JsnrE6NSsyrtxMvCGm1FDWYMJBnB4tDoWFmAULYKvdospozjk9Abvl2Hw3xu36j2c3W/x4iB/Xez0xdqNi8YN23gg8n45ZDCsDVZ4SE2ks8u81CoDcDhA3XmJF5Fpfwfnxi7OI9LNTkNJ26CnQb0/k80gYc1qUcGjgPasbWHPuPY4YJDAAr5U6faZUX8IqepLmk/icIQw+SFBQa4OS5+n4jJ3YpkM23RZdylY61t9ltU8GJI/d5tRsV7ZYeX+gE/RO53 [email protected]" registry.ng.bluemix.net/ibmnode:latest
3)綁定一個公網IP地址,IBM容器:
# ice ip bind <ip-address> my-container
4)運行ssh命令登錄到IBM集裝箱通過私鑰
# ssh -i cloud.key [email protected]<ip-address>
我們是否有類似的cf命令選項?我不確定,因爲我沒有看到docker的[run](https://docs.docker.com/reference/commandline/run/)引用中的--ssh選項。 – user3275095
我查了文檔,我想我們沒有他們的cf.我會嘗試冰塊。 – user3275095
是的,你必須使用冰命令ssh。 –
由於支持docker run
(包含在卷中),因此可以考慮使用adding a data volume。
這樣,您可以從主機修改文件,並且容器將通過安裝的卷看到修改。
使用卷我可以更新配置,但如何重新啓動容器的服務?或者我將不得不重新啓動容器? – user3275095
您要麼重新啓動容器,要麼由容器運行的服務將具有監視該配置文件並重新啓動的必要知識。 – VonC
服務不是那麼聰明:)。那麼我必須重新啓動容器。 我可以進入容器嗎? – user3275095
親愛downvoter,我將不勝感激,如果你可以給一些意見。 – user3275095