如何使用内置 Java 应用层在 AWS OpsWorks 上部署 Jenkins?

How to deploy Jenkins on AWS OpsWorks using Built-in Java App Layer?

我正在尝试将我的 Jenkins 安装从自定义 AMI 迁移到 Opsworks 的 Java/Tomcat 层。我更喜欢他们设置的合理默认值,并且我希望使部署尽可能简单。

这是在 AWS Opsworks 上运行,使用 Amazon Linux 2014.09.

按照此处部署 *.war 的说明进行操作:http://docs.aws.amazon.com/opsworks/latest/userguide/layers-java-deploy.html

我创建了一个简单的 git 存储库,其中包含以下内容:

jenkins-opsworks
├── deploy
│   └── before_migrate.rb
└── jenkins.war

1 directory, 2 files

before_migrate.rb 包含以下片段(由 AWS 提供)

::Dir.glob(::File.join(release_path, '*.war')) do |archive_file|
  execute "unzip_#{archive_file}" do
    command "unzip #{archive_file}"
    cwd release_path
  end
end

我已将我的 Jenkins 应用程序配置为 Java 类型,指向我的 github 存储库,并且可以验证 Opsworks 确实部署并且 运行 before_migrate.rb 钩子,将 war 文件提取到 /srv/www/jenkins/current/。此外,Catalina 似乎已经注册了 Jenkins 应用程序,但我在 http://domain/jenkins.

看不到任何内容

知道我做错了什么吗?再次——我试图在不构建自定义层的情况下尽可能靠近 Java 层,将不胜感激。

正如Jonathan Weiss (@jweiss), this actually works out of the box, and is accessible via http://domain/jenkins/指出的那样。我漏掉了结尾的斜杠。