IBM Bluemix上的MobileFirst容器映像 - 如何自定义它?

时间:2015-09-28 22:27:19

标签: containers ibm-cloud ibm-mobilefirst

我正在使用IBM Bluemix上提供的MobileFirstStarter镜像。

我知道MobileFirstStarter映像有一些限制,例如只允许一个运行时,并且每次重新部署容器时部署的资产都会被清除,但使用Dockerfile为此映像添加额外的wlapp和适配器是否存在限制?

更多详情:

我可以使用Dockerfile基于MFStarter映像创建一个新容器,可以通过ICE命令行界面或IBM DevOps Services上的交付管道。

但是,我想在Dockerfile上有说明将文件(即.wlapp和.adapter)从我的本地环境添加到MobileFirst Server,因此在构建映像并启动容器时,这些应用程序和适配器已经在MobileFirst Server的目录中(即在Server的控制台上看到)。

我的docker文件只是以默认的MFStarter图像开始,然后添加来自" DEPLOY_DIR"的内容。文件夹到 / opt / ibm / wlp / usr / servers / BluemixServer / dropins /

此配置会出现什么问题?容器已成功部署,我打开MFServer控制台,但我看不到来自本地DEPLOY_DIR的wlapp和适配器,只看到与MFStarter映像附带的WishList示例应用程序相关的默认值。

下面的完整Dockerfile内容:

from registry.ng.bluemix.net/ibm-mobilefirst-starter:latest

ENV DEPLOY_DIR /bin

# Add wlapp files
ADD $DEPLOY_DIR/*.wlapp /opt/ibm/wlp/usr/servers/BluemixServer/dropins/

# Add adapter files
ADD $DEPLOY_DIR/*.adapter /opt/ibm/wlp/usr/servers/BluemixServer/dropins/

谢谢!

3 个答案:

答案 0 :(得分:0)

  

我知道MobileFirstStarter图像有一些限制,例如   只允许一个运行时,并且每个部署的资产都被清除掉   你重新部署容器的时间,但添加是否有限制   使用Dockerfile对此映像添加其他wlapp和适配器?

您无法将此应用程序和适配器添加到此图像。 添加的唯一方法是部署.wlapp和.adapter文件。

另外,
它取决于数据库,因为这是.wlapp和.adapter文件所在的位置。

如果您将使用远程数据库,然后将图像推送到IBM Container,并且假设已正确设置,则一旦访问MobileFirst控制台,应用程序和适配器仍应显示且功能正常(除了预览功能)这不适用于远程服务器部署。)

答案 1 :(得分:0)

@ricardo,就像Idan所说的那样,这张图片不适合全面开发 - 它适用于演示。你真正想要的是使用开发者图像 - 而不是快速启动图像。使用此处的过程https://developer.ibm.com/mobilefirstplatform/documentation/getting-started-7-1/bluemix/run-foundation-on-bluemix/这将生成一个包含开发工件的映像,如服务器上部署的wlapps和适配器,作为映像构建的一部分。这还附带一个docker文件,如果您愿意,可以调整它。希望这有帮助

答案 2 :(得分:0)

您可以将自己的.wlapp / .wladapter部署到初始图像上。但是,限制是您只能将app / adapter部署到预先发布的MobileFirstStarter项目/运行时。建议的方法是使用MFP操作控制台或MFP CLI来部署.wlapp / .wladaper。

话虽如此,您可以按照以下方式使用Dockerfile来启动容器中部署的应用和适配器。

假设您在mfp-apps-adapters文件夹下有所有.wlapp和.wladapter文件,则dockerfile可能如下所示:

FROM registry.ng.bluemix.net/ibm-mobilefirst-starter:latest
RUN mkdir -p /mfp_apps_adapters
COPY mfp_apps_adapters /mfp_apps_adapters

#Just use curl to run the REST APIs with the username and password you’ve 
set for the admin console. You can also script this in a shell script, 
copy the script into the image and then run through the deployment of 
apps and adapters using the REST APIs. 
http://www-01.ibm.com/support/knowledgecenter/SSHS8R_7.1.0/com.ibm.worklight.apiref.doc/apiref/c_restapi_oview.html?lang=en

另请参阅: https://developer.ibm.com/mobilefirstplatform/2015/10/25/running-ibm-mobilefirst-starter-container-locally/