如何使用内置 Java 应用层在 AWS OpsWorks 上部署 Jenkins?
Posted
技术标签:
【中文标题】如何使用内置 Java 应用层在 AWS OpsWorks 上部署 Jenkins?【英文标题】:How to deploy Jenkins on AWS OpsWorks using Built-in Java App Layer? 【发布时间】:2015-05-04 18:50:37 【问题描述】:我正在尝试将我的 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
包含以下sn-p(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
挂钩,将战争文件提取到 /srv/www/jenkins/current/
。此外,Catalina 似乎已经注册了 Jenkins 应用程序,但我在 http://domain/jenkins
上看不到任何内容。
知道我在这里做错了什么吗?再一次——我试图在不构建自定义层的情况下尽可能接近 Java 层,非常感谢约束。
【问题讨论】:
我正在尝试自己设置。我从该站点下载了最新的 .war,并且正在运行 OpenJDK 7 和 Tomcat 7。当我检查 domain/jenkins 和 domain 时,我可以看到 apache 访问日志显示 404。一切都是库存设置。您的before_migrate.rb
中是否还有其他我可能遗漏的内容?
【参考方案1】:
正如Jonathan Weiss (@jweiss) 所指出的,这实际上是开箱即用的,可以通过http://domain/jenkins/ 访问。我错过了结尾的斜杠。
【讨论】:
以上是关于如何使用内置 Java 应用层在 AWS OpsWorks 上部署 Jenkins?的主要内容,如果未能解决你的问题,请参考以下文章
适用于 iOS/Android 的 AWS 移动开发工具包中内置的网络安全性如何?
使用 AWS OpsWorks,我如何启动我的节点应用程序?