使用Tomcat Cookbook安装tomcat7

时间:2014-03-21 18:29:07

标签: tomcat chef vagrant cookbook

在我的CentOS 6.5上使用vagrant-berkshelf,我尝试将7指定为要安装的Tomcat版本:

    "tomcat" => {
      "base_version" => "7"
    }

然而,当我尝试运行vagrant provision时,我遇到了一个错误:

[2014-03-21T18:23:50+00:00] ERROR: package[tomcat7] (tomcat::default line 45) 
       had an error: Chef::Exceptions::Package: No version specified, 
       and no candidate version available for tomcat7

此Opscode“添加对Tomcat7的支持”bug被标记为“已修复”,但它仅显示为针对Ubuntu 12.04进行了测试。我不确定这是否意味着(a)它没有经过CentOS测试或(b)它从未被CentOS破坏。

如何在Chef的流浪盒上使用tomcat7

4 个答案:

答案 0 :(得分:3)

有两个问题:

  1. 在CentOS上,tomcat 7软件包(7.0.33-3.el6)位于EPEL中,简称为tomcat'
  2. 这个包目前是错误的。 [请参阅:https://bugzilla.redhat.com/show_bug.cgi?id=1080195]较新的版本(7.0.33-4.el6)对此进行了修复,但目前已在epel-testing存储库中进行了修复。
  3. 请参阅:https://github.com/opscode-cookbooks/tomcat/pull/34

    我的临时解决方案是编写一个包装器Chef配方,它通过包管理器安装EPEL repo和bug-fix tomcat7包。类似的东西:

    # BERKSHELF
    cookbook "yum", "~> 3.2.0"
    cookbook "yum-epel", "~> 0.3.6"
    
    
    # CHEF
    override['yum']['epel-testing']['enabled'] = true
    package 'tomcat'
    

答案 1 :(得分:1)

似乎tomcat7还不在centos6.5的标准/ epel存储库中。

[root@secure36 rfridman]# cat /etc/issue
CentOS release 6.5 (Final)

[root@secure36 rfridman]# yum search tomcat
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: mirror.atlanticmetro.net
 * epel: mirror.symnds.com
 * extras: mirror.es.its.nyu.edu
 * updates: mirror.cogentco.com
==================================================================== N/S Matched: tomcat =====================================================================
tomcatjss.noarch : JSSE implementation using JSS for Tomcat
apache-tomcat-apis.noarch : Tomcat Servlet and JSP APIs
jakarta-commons-collections-tomcat5.noarch : Jakarta Commons Collection dependency for Tomcat5
jakarta-commons-dbcp-tomcat5.noarch : DBCP dependency for Tomcat5
jakarta-commons-pool-tomcat5.x86_64 : Pool dependency for Tomcat5
jglobus-ssl-proxies-tomcat.noarch : Globus Java - SSL and proxy certificate support for Tomcat
tomcat-admin-webapps.noarch : The host-manager and manager web applications for Apache Tomcat
tomcat-docs-webapp.noarch : The docs web application for Apache Tomcat
tomcat-javadoc.noarch : Javadoc generated documentation for Apache Tomcat
tomcat-jsp-2.2-api.noarch : Apache Tomcat JSP API implementation classes
tomcat-jsvc.noarch : Apache jsvc wrapper for Apache Tomcat as separate service
tomcat-lib.noarch : Libraries needed to run the Tomcat Web container
tomcat-native.x86_64 : Tomcat native library
tomcat-servlet-3.0-api.noarch : Apache Tomcat Servlet API implementation classes
tomcat-webapps.noarch : The ROOT and examples web applications for Apache Tomcat
tomcat6.noarch : Apache Servlet/JSP Engine, RI for Servlet 2.5/JSP 2.1 API
tomcat6-admin-webapps.noarch : The host-manager and manager web applications for Apache Tomcat
tomcat6-docs-webapp.noarch : The docs web application for Apache Tomcat
tomcat6-javadoc.noarch : Javadoc generated documentation for Apache Tomcat
tomcat6-jsp-2.1-api.noarch : Apache Tomcat JSP API implementation classes
tomcat6-lib.noarch : Libraries needed to run the Tomcat Web container
tomcat6-servlet-2.5-api.noarch : Apache Tomcat Servlet API implementation classes
tomcat6-webapps.noarch : The ROOT and examples web applications for Apache Tomcat
glite-security-trustmanager-tomcat6.noarch : Java trustmanager interface supporting a GSI grid name space
tomcat.noarch : Apache Servlet/JSP Engine, RI for Servlet 3.0/JSP 2.2 API
tomcat-el-2.2-api.noarch : Expression Language v1.0 API
tomcat6-el-2.1-api.noarch : Expression Language v1.0 API

您应该尝试从源代码编译tomcat7,或尝试查找包含tomcat7的存储库并将其添加到cookbook配置中。

答案 2 :(得分:1)

Tomcat 7位于您显示的列表中。

yum info tomcat
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.mirror.ndchost.com
 * epel: mirror.vcu.edu
 * extras: centos.sonn.com
 * updates: mirror.atlanticmetro.net
Available Packages
Name        : tomcat
Arch        : noarch
Version     : 7.0.33
Release     : 3.el6
Size        : 86 k
Repo        : epel
Summary     : Apache Servlet/JSP Engine, RI for Servlet 3.0/JSP 2.2 API
URL         : http://tomcat.apache.org/
License     : ASL 2.0
Description : Tomcat is the servlet container that is used in the official Reference
            : Implementation for the Java Servlet and JavaServer Pages technologies.
            : The Java Servlet and JavaServer Pages specifications are developed by
            : Sun under the Java Community Process.
            : 
            : Tomcat is developed in an open and participatory environment and
            : released under the Apache Software License version 2.0. Tomcat is intended
            : to be a collaboration of the best-of-breed developers from around the world.

问题出在tomcat食谱中。它正在寻找一个tomcat7包。

答案 3 :(得分:0)

遇到同样的问题; 我快速修复':使用JPackage repo for tomcat 7(它像配方一样被称为tomcat7)