2016-10-20 6 views
0

두 가지 서비스에 대해 Google 클라우드 유연한 앱 엔진에 바이너리를 배포하고 있습니다. 그래서 나는 {app-service1.yaml, Dockerfile-service1}과 {app-service2.yaml, Dockerfile-service2}을 가지고있다. "gcloud app deploy"명령을 사용하여 배포하십시오.app.yaml params를 Dockerfile에 보내려면

app-service [1 | 2] .yaml에서 단일 Dockerfile로 매개 변수를 전송하여 하나의 Dockerfile 만 유지할 수 있습니까?

나는 두 가지를 시도했지만 그들은 "배포 gcloud"작동하지 않았다 명령을

  1. "엔트리 포인트 :"애플리케이션 제목에 - 그것은 Dockerfile에 CMD에 설정되어있는 것을 무시하지 않습니다.
  2. app.yaml의 "env_variables :"- Dockerfile의 ENV 또는 ARG에 env_variables :에 정의 된 변수가 없습니다.

답변

1

gcloud app deploy을 사용하는 동안 도커 빌드 프로세스에 매개 변수를 전달할 수있는 방법이 없습니다. 사용하는 도커 파일이 비슷한 경우 기본 도커 파일을 만들고 기본 이미지를 만든 다음 gcr.io로 보냅니다. 그런 다음 다른 Docker 파일로 기본 이미지를 확장 할 수 있습니다.

희망이 도움이됩니다.

+0

저스틴에게 답장을 보내 주셔서 감사합니다. 그렇다면 app.yaml에서 "env_variables :"를 어떻게 사용합니까? 나는 프로세스 또는 VM을 빌드하기 위해 env 변수를 보내는 방법이라고 기대한다. – PaulC

+0

도움을 주셔서 감사합니다. app.yaml에서 "env_variables :"에 환경 변수를 설정했습니다. 해당 env 변수는 이미지 작성시 표시되지 않을 수 있지만 런타임에 앱에 표시됩니다. – PaulC