簡體   English   中英

Spring Cloud Config無法從私有git存儲庫獲取配置

[英]Spring Cloud Config failed to get the configuration from private git repository

我當時使用的是Spring Cloud配置服務器的類路徑來放置所有配置文件,現在我決定將其移至git服務器,因此我創建了一個空存儲庫,然后提交了配置文件。

配置看起來像這樣:

server:
  port: 8888

spring:
  application:
    name: server-config
  cloud:
    config:
      server:
        git:
          uri: ssh://development@xxx.xx.my.ip:/home/development/repository
          password: password

當我啟動配置服務器時,一切正常,但是當我無法通過url(例如: http:// localhost:8888 / get-ticket / env )訪問微服務的配置時,我會收到以下消息:

白標錯誤頁面

此應用程序沒有針對/ error的顯式映射,因此您將其視為后備。 2015年9月22日星期二14:30:31 GMT-03:00發生意外錯誤(類型=內部服務器錯誤,狀態= 500)。 無法加載環境

在我的堆棧跟蹤中,我可以看到:

2015-09-22 14:30:31.024信息9160-[nio-8888-exec-1] osweb.servlet.DispatcherServlet:FrameworkServlet'dispatcherServlet':初始化在18毫秒內完成2015-09-22 14:30:31.233錯誤9160-[nio-8888-exec-1] oaccC [。[。[/]。[dispatcherServlet]:在路徑為[]的上下文中,用於servlet [dispatcherServlet]的Servlet.service()引發異常[請求處理失敗; 嵌套的異常是java.lang.IllegalStateException:無法加載環境]的根本原因

org.eclipse.jgit.errors.NotSupportedException:不支持URI:ssh:///development@xxx.xx.my.ip:/ home / development / repository at org.eclipse.jgit.transport.Transport.open(Transport。 java:563)位於org.eclipse.jgit.transport.Transport.open(Transport.java:437)位於org.eclipse.jgit.transport.Transport.open(Transport.java:318)位於org.eclipse.jgit.transport org.eclipse.jgit.api.FetchCommand.call(FetchCommand.java:120)處的.Transport.open(Transport.java:287)org.eclipse.jgit.api.CloneCommand.fetch(CloneCommand.java:178)處的。 org.springframework.cloud.config.server上的org.eclipse.jgit.api.CloneCommand.call(CloneCommand.java:125)在org.springframework.cloud.config.server上的JGitEnvironmentRepository.cloneToBasedir(JGitEnvironmentRepository.java:207)。 org.springframework.cloud.config.server.JGitEnvironmentRepository.createGitClient(JGitEnvironmentRepository.java:169)上的JGitEnvironmentRepository.copyRepository(JGitEnvironmentRepository.java:180)在org.springframework.cloud.config.server.JGitEnvironme org.springframework.cloud.config.server.MultipleJGitEnvironmentRepository.findOne(MultipleJGitEnvironmentRepository.java:84)上的ntRepository.findOne(JGitEnvironmentRepository.java:79)在org.springframework.cloud.config.server.EnvironmentController.labelled(EnvironmentController.labelled。 83)在org.springframework.cloud.config.server.EnvironmentController.defaultLabel(EnvironmentController.java:77)在sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)在org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java)處java.lang.reflect.Method.invoke(Method.java:497)處sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) :221),位於org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137),位於org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAn org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter上的dHandle(ServletInvocableHandlerMethod.java:110)在org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:776) org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85)的handleInternal(RequestMappingHandlerAdapter.java:705)org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959)的handleInternal(RequestMappingHandlerAdapter.java:705)在org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893)在org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966)在org.springframework.web.servlet.FrameworkServlet.doGet (FrameworkServlet.java:857),位於org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842),位於javax.servlet.http.HttpServlet.service(HttpServlet.java:618)。 HttpServlet.s org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291)處的ervice(HttpServlet.java:725)org.apache處的org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)處的ervice(HttpServlet.java:725)位於org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)的.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:206),位於org.org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107),位於org.springframework.boot.actuate.autoconfigure.EndpointWebMvcAutoConfiguration $ ApplicationContextHeaderFilter.doFilterInternal(EndpointWebMvcAutoConfiguration.java:291)。 org.springframework.web.filter.HiddenHttpMeth上的apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)在org.springframework.web.filter.HiddenHttpMeth org處org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)處的odFilter.doFilterInternal(HiddenHttpMethodFilter.java:77)org處的org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) org.springframework.boot.actuate.trace.WebRequestTraceFilter.doFilterInternal(WebRequestTraceFilter.java:102)的.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:107)在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)在org.springframework。位於org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)的web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:85)位於org.apache.catalina.core.ApplicationFilterCha org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)的in.internalDoFilter(ApplicationFilterChain.java:239)org.springframework.boot.actuate.autoconfigure.MetricFilterAutoConfiguration $ MetricsFilter.doFilterInternal(MetricFilterAutoConfiguration.java: 90)在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239)在org.apache.catalina.core.ApplicationFilterChain的org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107) org.org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219)的org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)的.doFilter(ApplicationFilterChain.java:206) org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142)處的apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve .java:79)位於org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)位於org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:516),位於org.apache.coyote。 org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:659)上的http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1086)在org.apache.coyote.http11.Http11NioProtocol $ Http11ConnectionHandler.process(Http11NioProtocol.java: 223)在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1558)在org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1515)在Java org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run上的.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617) (TaskThread.java:61)位於java.lang.Thread.run(Thread.java:745)

Spring配置在ssh連接上有問題,使用http instread

當Spring Cloud config嘗試加載具有同步錯誤(例如重復鍵)的yml / properties文件時,會給您500錯誤。

該錯誤消息沒有提供有關問題原因的有用信息。 有一個開放的問題可以改善錯誤消息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM