2017-01-03 1 views
1

콘솔에서 Swisscom App Cloud로 애플리케이션을 배포하려고합니다. 그것은 더 설명이없는 (504)가보고, 마지막까지 진행 상황을보고합니다배포가 실패하여 504

Updating app helloclass-fe-develop in org UCID-Bern Team/space HELLOCLASS-TEST as christian.cueni[email protected] 
OK 

Uploading helloclass-fe-develop... 
FAILED 
Error processing app files: Error uploading application. 
Server error, status code: 504, error code: 0, message: 

응용 프로그램이 갱신 된 것을 응용 프로그램 보고서 로그 :

2017-01-03 09:37:39 [RTR/0] OUT helloclass-develop.scapp.io - [03/01/2017:08:37:39.584 +0000] "GET/HTTP/1.1" 200 0 594 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.75 Safari/537.36 Google Favicon" 66.249.93.201:50868 10.0.18.35:64341 x_forwarded_for:"83.76.152.96" x_forwarded_proto:"https" vcap_request_id:8a8adcc7-9e97-4bd9-4492-68e92883ee3d response_time:0.001739219 app_id:310166b4-f3a6-4168-a9ac-530e45dbfb10 app_index:0 
2017-01-03 09:37:39 [APP/PROC/WEB/0] OUT 83.76.152.96, 66.249.93.201, 66.249.93.201 - - - [03/Jan/2017:08:37:39 +0000] "GET/HTTP/1.1" 200 606 
2017-01-03 10:05:50 [API/2] OUT Updated app with guid 310166b4-f3a6-4168-a9ac-530e45dbfb10 ({"name"=>"helloclass-fe-develop"}) 
2017-01-03 10:57:15 [API/1] OUT Updated app with guid 310166b4-f3a6-4168-a9ac-530e45dbfb10 ({"state"=>"STOPPED"}) 
2017-01-03 10:57:15 [CELL/0] OUT Exit status 0 
2017-01-03 10:57:15 [APP/PROC/WEB/0] OUT Exit status 0 
2017-01-03 10:57:15 [CELL/0] OUT Destroying container 
2017-01-03 10:57:15 [CELL/0] OUT Successfully destroyed container 
2017-01-03 10:57:16 [API/1] OUT Updated app with guid 310166b4-f3a6-4168-a9ac-530e45dbfb10 ({"state"=>"STARTED"}) 
2017-01-03 10:57:16 [CELL/0] OUT Creating container 
2017-01-03 10:57:16 [CELL/0] OUT Successfully created container 
2017-01-03 10:57:17 [CELL/0] OUT Starting health monitoring of container 
2017-01-03 10:57:19 [CELL/0] OUT Container became healthy 

하는 것 해당 메시지에도 불구하고 앱이 업데이트되었음을 ​​나타내면 이전 버전의 앱이 계속 제공되고 있음을 알 수 있습니다.

RESPONSE: [2017-01-03T13:32:39+01:00] 
HTTP/1.1 504 Gateway Timeout 
Connection: close 
Content-Length: 176 
Cache-Control: no-cache, no-store, max-age=0, must-revalidate 
Content-Type: text/html 
Date: Tue, 03 Jan 2017 12:32:39 GMT 
Expires: 0 
Pragma: no-cache 
Strict-Transport-Security: max-age=15768000; includeSubDomains 
X-Content-Type-Options: nosniff 
X-Frame-Options: DENY 
X-Vcap-Request-Id: 3ac831ef-e70b-4f4e-7c56-e308806f039e 
X-Xss-Protection: 1; mode=block 

<html> 
<head><title>504 Gateway Time-out</title></head> 
<body bgcolor="white"> 
<center><h1>504 Gateway Time-out</h1></center> 
<hr><center>nginx</center> 
</body> 
</html> 

FAILED 
Error processing app files: Error uploading application. 
Server error, status code: 504, error code: 0, message: 

cloudfoundry 특정 또는 오히려이 뭔가 :


편집

-v 매개 변수를 사용하여 명령을 실행 한 후, 나는 실패의 이유는 게이트웨이 시간 초과는 것을 알 Swisscom AppCloud와 관련이 있습니까? cloudfoundry 고유의 제한 시간 제한이 있습니까?

+0

애플리케이션의 크기는 얼마나 되나요? 'helloclass-fe-developing 업로드 중 ...'에서 멈추고 CF 제공 업체에 대역폭을 테스트 한 지 얼마나됩니까? 앱이 업로드하는 데 너무 오래 걸리는 것일 수도 있습니다. @dkoper가 언급했듯이 gorouters는 들어오는 모든 요청에 ​​대해 시간 초과가 있습니다. 기본값은 900 초이지만 공급자는이 값을 더 크거나 작게 설정할 수 있습니다. 추적 출력에서 ​​요청/응답 날짜 헤더에 대해 몇 가지 계산을 수행하면 대기 시간과 대기 시간을 확인할 수 있습니다. –

+0

여러분의 많은 성원에 감사드립니다! 빌드/dist 폴더 대신 루트 디렉토리에서 업로드했습니다. 이로 인해 시간 초과가 발생했습니다. – paweloque

답변

2

cf push-v과 함께 실행하거나 CF_TRACE를 사용하여 CLI와 CF 엔드 포인트 간의 상호 작용을 더 많이 볼 수 있습니다.
오류 메시지는 https://github.com/cloudfoundry/cli/issues/1042과 비슷합니다. Cloud Controller가 요청을 완료 할 수 없으며 API 요청을 Cloud Controller로 라우트 한 라우터가 더 이상 기다리지 않고 CLI (Gateway timeout)를 CLI에 반환했습니다.

추적은 어떤 API 호출이 시간 초과되었는지 알려줍니다.
CLI는 클라우드 컨트롤러가 성공적으로 작업을 완료 한 동안 작업을 중단했습니다.

내가 CLI 여기에 수행 할 작업을 생각했을 것이다

은 다음과 같습니다

  1. 자원 매칭을위한 앱에서 파일 및 체크섬의 목록을 보내 (그래서 그 CC 캐시 된 수정되지 않은 응용 프로그램의 비트를 업로드 건너 뛸 수 있습니다
  2. 업로드 응용 프로그램 파일) 이전 푸시에서
  3. (재) 준비를 포함하는 (응용 프로그램 시작)
  4. 설문 조사 앱 인스턴스가 실행중인 것을 반환 할 때까지 & 대기

CLI 출력에서 ​​첫 번째 작업 시간이 초과되었다고 가정하므로 앱을 다시 시작한 방법을 분명히 알지 못합니다.

+0

고마워요. 자세한 내용은 출처를 밝혔다. 내 질문에 편집을 참조하십시오. – paweloque

+0

원래 메시지에서 504 게이트웨이 시간 초과가 반환 된 것을 이미 알고있었습니다.504를 수신 한 API 요청이 다음에 흥미로운 점은 무엇입니까? 추적에 포함하지 않았습니다. 504 응답 이전에 기록 된 요청은 무엇 이었습니까? (리소스 일치 API에 대한 호출 인 경우 긴 페이로드를 제외 할 수 있음) – dkoper

+0

지원해 주셔서 감사합니다. 빌드/dist 폴더 대신 루트 디렉토리에서 업로드했습니다. 이로 인해 시간 초과가 발생했습니다. – paweloque