2011-09-09 123 views
10

我们将应用程序打包为一个.war文件,我们宣传对JBoss AS5的支持并指导我们的客户将.war复制到他们的JBoss'deploy'目录,并按顺序启动它们的应用程序服务器部署.war。JBoss AS7 * .dodeploy文件

我们推出了支持的JBoss AS7,所以我们的AS7部署说明将不得不更改为类似

-copy the application.war to $JBOSS_HOME/standalone/deployments 
-touch $JBOSS_HOME/standalone/deployments/application.war.dodeploy 
-start JBoss AS7 

这deployent方法似乎笨拙对我来说,可能脆弱,如不能成功创建* .dodeploy文件会导致部署失败。另外,JBoss启动问题可能会导致部署失败,导致* .dodeploy文件被重命名为* .failed - 因此在尝试重新部署之前必须将其重命名为* .dodeploy。我们认为对于我们的一些客户来说,这个过程似乎有些尴尬,他们可能不熟悉JBoss AS7。

有没有什么办法可以让这个部署过程自动化,以便部署者可能不熟悉JBoss AS7的工作方式?其他人如何处理这种情况?感谢您的任何建议。

回答

8

有一个相当容易使用的网络界面。你可以在JBoss AS7启动后通过访问http://localhost:8080来访问它。该页面上有一个链接,可将您带到管理控制台。

您还可以使用CLI界面编写用于部署的脚本。这里有一些关于如何使用它的信息https://docs.jboss.org/author/display/AS7/Management+Clients

最后,您可以随时编写自己的Java客户端来部署应用程序。我回写了一个blog post,回想如何编写自定义部署CLI界面。

2

您仍然可以在不使用任何标记的情况下使用旧脚本。

通过更改standalone.xml配置文件中deployment-scanner元素上的“auto-deploy”属性,可以在standalone.xml中更改此项。

更多详细信息可以在部署文件夹README中找到。

6

如果您意识到标记文件,那么您可能会有意识地选择禁用部署文件夹的自动部署模式,该文件夹默认情况下处于启用状态。 Autodeploy除了展开文件外,其他都很棒,并且不需要手动管理标记文件。在启用自动部署的情况下,您可以在应用程序本身上使用“touch”命令,该命令将更新timstamp并触发应用程序进行部署(或重新部署)。所以如果需要的话,你仍然可以编写脚本,但只关注文件而不是标记文件。

仅供参考,有五种部署文件的方式,其中三种常见于典型的管理设置。这些是图形管理控制台,管理命令行界面(CLI)和您提到的部署文件夹。另外两个是通过IDE(例如JBoss Developer Studio或带有JBoss Tools的Eclipse),甚至通过Maven。

对于那些可能不熟悉脚本的人而言,那么您无法越过控制台GUI中的“管理部署”部分。控制台部署不会将应用程序移动/复制到部署文件夹,因此同时使用控制台和部署文件夹可以在文件管理中做出一些努力。

对bash精明的用户,CLI是很大的,而且往往是由AS7小组推荐为部署和管理应用程序的首选方法。 CLI上的用户指南部分位于此处:https://docs.jboss.org/author/display/AS7/Admin+Guide#AdminGuide-RunningtheCLI"5 ways to deploy your application to JBoss AS 7"

的所有部署方法的一个例子可以在此YouTube视频由开发商之一被发现。希望有所帮助。

5

你只需要部署爆炸.dodeploy。如果您的部署是压缩战争,耳朵等。那么它将被自动拾取。

5

手动更改您的部署模式自动它会自动执行此部署。

步骤:

1)打开你的jboss的配置文件:standalone.xml

2)寻找部署扫描器并添加自动部署,压缩= “真”

<deployment-scanner scan-interval="5000" relative-to="jboss.server.base.dir" 
    path="deployments" auto-deploy-zipped="true" auto-deploy-exploded="false"/> 

3)重新启动的Jboss。

现在,它会自动挑选你的耳朵/战争/罐/ SAR文件压缩版本进行部署。

+0

add ... auto-deploy-zipped =“true”auto-deploy-exploded =“false” – MacGyver