2012-02-02 29 views
8

Tôi đang cố triển khai Jenkins trong các ứng dụng Jetty của Jetty/webapps. Tôi đã sao chép jenkins.war vào thư mục này, khởi động lại Jetty, nhưng khi tôi trỏ đến http://localhost:8080/jenkins, hệ thống cảnh báo:L ERI HTTP: 503 ... truy cập/jenkins. Lý do: Dịch vụ không có sẵn

Lỗi HTTP: 503 Sự cố khi truy cập/jenkins. Lý do: Service Unavailable

Dưới đây là log giao diện điều khiển của tôi

2012-02-02 09:13:39.912:WARN:oejuc.AbstractLifeCycle:FAILED [email protected]: java.lang.IllegalStateException: No LoginService for [email protected]384 in [email protected] 
java.lang.IllegalStateException: No LoginService for [email protected]384 in [email protected] 
    at org.eclipse.jetty.security.authentication.LoginAuthenticator.setConfiguration(LoginAuthenticator.java:44) 
    at org.eclipse.jetty.security.authentication.FormAuthenticator.setConfiguration(FormAuthenticator.java:103) 
    at org.eclipse.jetty.security.SecurityHandler.doStart(SecurityHandler.java:341) 
    at org.eclipse.jetty.security.ConstraintSecurityHandler.doStart(ConstraintSecurityHandler.java:228) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) 
    at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97) 
    at org.eclipse.jetty.server.session.SessionHandler.doStart(SessionHandler.java:122) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) 
    at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97) 
    at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:745) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1213) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:699) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:454) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:36) 
    at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:183) 
    at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:491) 
    at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:138) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:142) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:53) 
    at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:604) 
    at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:535) 
    at org.eclipse.jetty.util.Scanner.scan(Scanner.java:398) 
    at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:332) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:118) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:552) 
    at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:227) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.util.component.AggregateLifeCycle.doStart(AggregateLifeCycle.java:58) 
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:53) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:91) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:263) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1215) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1138) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.eclipse.jetty.start.Main.invokeMain(Main.java:457) 
    at org.eclipse.jetty.start.Main.start(Main.java:600) 
    at org.eclipse.jetty.start.Main.main(Main.java:82) 
2012-02-02 09:13:39.913:WARN:oejuc.AbstractLifeCycle:FAILED [email protected]: java.lang.IllegalStateException: No LoginService for [email protected]384 in [email protected] 
java.lang.IllegalStateException: No LoginService for [email protected]384 in [email protected] 
    at org.eclipse.jetty.security.authentication.LoginAuthenticator.setConfiguration(LoginAuthenticator.java:44) 
    at org.eclipse.jetty.security.authentication.FormAuthenticator.setConfiguration(FormAuthenticator.java:103) 
    at org.eclipse.jetty.security.SecurityHandler.doStart(SecurityHandler.java:341) 
    at org.eclipse.jetty.security.ConstraintSecurityHandler.doStart(ConstraintSecurityHandler.java:228) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) 
    at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97) 
    at org.eclipse.jetty.server.session.SessionHandler.doStart(SessionHandler.java:122) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) 
    at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97) 
    at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:745) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1213) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:699) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:454) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:36) 
    at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:183) 
    at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:491) 
    at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:138) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:142) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:53) 
    at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:604) 
    at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:535) 
    at org.eclipse.jetty.util.Scanner.scan(Scanner.java:398) 
    at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:332) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:118) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:552) 
    at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:227) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.util.component.AggregateLifeCycle.doStart(AggregateLifeCycle.java:58) 
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:53) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:91) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:263) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1215) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1138) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.eclipse.jetty.start.Main.invokeMain(Main.java:457) 
    at org.eclipse.jetty.start.Main.start(Main.java:600) 
    at org.eclipse.jetty.start.Main.main(Main.java:82) 
2012-02-02 09:13:39.914:WARN:oejw.WebAppContext:Failed startup of context o.e.j.w.WebAppContext{/jenkins,file:/tmp/jetty-0.0.0.0-8080-jenkins.war-_jenkins-any-/webapp/},/home/ic/jetty/webapps/jenkins.war 
java.lang.IllegalStateException: No LoginService for [email protected]384 in [email protected] 
    at org.eclipse.jetty.security.authentication.LoginAuthenticator.setConfiguration(LoginAuthenticator.java:44) 
    at org.eclipse.jetty.security.authentication.FormAuthenticator.setConfiguration(FormAuthenticator.java:103) 
    at org.eclipse.jetty.security.SecurityHandler.doStart(SecurityHandler.java:341) 
    at org.eclipse.jetty.security.ConstraintSecurityHandler.doStart(ConstraintSecurityHandler.java:228) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) 
    at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97) 
    at org.eclipse.jetty.server.session.SessionHandler.doStart(SessionHandler.java:122) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90) 
    at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:97) 
    at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:745) 
    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:242) 
    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1213) 
    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:699) 
    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:454) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:36) 
    at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:183) 
    at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:491) 
    at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:138) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:142) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:53) 
    at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:604) 
    at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:535) 
    at org.eclipse.jetty.util.Scanner.scan(Scanner.java:398) 
    at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:332) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:118) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:552) 
    at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:227) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.util.component.AggregateLifeCycle.doStart(AggregateLifeCycle.java:58) 
    at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:53) 
    at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:91) 
    at org.eclipse.jetty.server.Server.doStart(Server.java:263) 
    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59) 
    at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1215) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1138) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:601) 
    at org.eclipse.jetty.start.Main.invokeMain(Main.java:457) 
    at org.eclipse.jetty.start.Main.start(Main.java:600) 
    at org.eclipse.jetty.start.Main.main(Main.java:82) 
... 

2012-02-02 09:13:41.235:INFO:oejs.AbstractConnector:Started [email protected]:8080 

Làm thế nào tôi có thể sửa lỗi này?

Xin cảm ơn trước.

Trả lời

1

Để sử dụng mô-đun JAAS thử nghiệm mẫu đi kèm với Cầu tàu.

<Configure class="org.eclipse.jetty.webapp.WebAppContext"> 
    <Set name="contextPath">/jenkins</Set> 
    <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/jenkins.war</Set> 
    <Set name="securityHandler"> 
    <New class="org.eclipse.jetty.security.ConstraintSecurityHandler"> 
    <Set name="loginService"> 
     <New class="org.eclipse.jetty.plus.jaas.JAASLoginService"> 
     <Set name="name">Test JAAS Realm</Set> 
     <Set name="loginModuleName">xyz</Set> 
     </New> 
    </Set> 
    </New> 
    </Set> 
</Configure> 

này sau đó trỏ đến lĩnh vực và định nghĩa trong etc/login.confetc/login.properties tương ứng.

Theo ví dụ này, việc tạo mô-đun JAAS của riêng bạn sẽ tương đối dễ dàng.

14

Tôi đã gặp lỗi này khi cố gắng cài đặt Jenkins trong phiên bản mới (8.1.X) của Jetty. Có vẻ như đã có bug fix có thể đã giới thiệu hành vi này và nó được trưng bày khi cài đặt Jenkins/Hudson. Một lĩnh vực bảo mật/loginservice bây giờ được yêu cầu phải được đưa ra một cách rõ ràng.

Trong các môi trường không có yêu cầu bảo mật nghiêm ngặt của Jetty, tức là: những người đam mê không phải Jetty, những người chỉ muốn khởi động và chạy Jenkins. Tạo một tệp ngữ cảnh, $ JETTY_HOME \ contexts \ jenkins.xml, có chứa một trình xử lý bảo mật.

<Configure class="org.eclipse.jetty.webapp.WebAppContext"> 
    <Set name="contextPath">/jenkins</Set> 
    <Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/jenkins.war</Set> 

    <Get name="securityHandler"> 
    <Set name="loginService"> 
     <New class="org.eclipse.jetty.security.HashLoginService"> 
      <Set name="name">Jenkins Realm</Set> 
      <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/realm.properties</Set> 
     </New> 
    </Set> 
    </Get> 

</Configure> 

Hy vọng điều này sẽ hữu ích!

+0

Đây là câu trả lời hay hơn vì nó cung cấp đường dẫn để đặt XML. –

+2

@Randolph điều này đã không làm việc cho tôi trên cầu cảng 9. – user3111525

+1

Ngoài ra kiểm tra http://pietervogelaar.nl/ubuntu-12-04-install-jenkins-1-4-with-jetty-9 – Sithsu

0

Trong trường hợp của tôi, vấn đề là tôi đã chuyển sang openjdk-1.7, nhưng không cài đặt gói 'devel'. Chuyển sang IBM đã giải quyết nó.

0

Cầu cảng được định cấu hình để sử dụng Dịch vụ xác thực và ủy quyền Java. Bảo mật được xác định trong lĩnh vực (tên người dùng + vai trò).

Về cơ bản, tất cả những gì bạn phải làm là nói với cầu cảng để sử dụng định nghĩa bảo mật cho tệp jenkins.war được triển khai. Cách dễ nhất là tạo một tệp jenkins.xml và đặt nó vào cùng thư mục với tệp jenkins.war.

Nội dung của tập tin là này (ví jetty9)

<?xml version="1.0"?> 
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd"> 
<Configure id='wac' class="org.eclipse.jetty.webapp.WebAppContext"> 
    <Set name="contextPath">/jenkins</Set> 
    <Set name="war"><Property name="jetty.webapps" default="."/>/jenkins.war</Set> 
    <Set name="extractWAR">true</Set> 
    <Set name="securityHandler"> 
    <New class="org.eclipse.jetty.security.ConstraintSecurityHandler"> 
    <Set name="loginService"> 
     <New class="org.eclipse.jetty.jaas.JAASLoginService"> 
     <Set name="name">Test JAAS Realm</Set> 
     <Set name="loginModuleName">xyz</Set> 
     </New> 
    </Set> 
    </New> 
    </Set> 
</Configure> 
0

Chỉ cần một lưu ý rằng nếu bạn đã bắt đầu nhận được lỗi này thời gian gần đây, và nghĩ rằng bạn có thể đã sử dụng một AJP đảo ngược proxy, có thể bạn' đã được cập nhật lặng lẽ để Jenkins 2.x mà phá vỡ đó.

May mắn thay, đây là một sửa chữa dễ dàng nếu bạn đang sử dụng Apache 2.4 ngay bây giờ - bạn có thể sử dụng proxy ngược HTTP thay vì described here.

Tôi đã viết thêm một chút về điều này trong this post.

1

Tôi cũng gặp vấn đề tương tự.Cài đặt trước đây sử dụng Jenkins repo

Removed Jenkins

  • yum loại bỏ Jenkins & & yum sạch tất cả

đã rpm mới nhất

Tất cả mọi thứ bắt đầu một cách hoàn hảo.

Các vấn đề liên quan