Appengine 部署因自定义 docker 文件而失败

Appengine 部署因自定义 docker 文件而失败

我正在尝试使用自定义 docker 文件在 appengine 上部署我的 vue.js 代码,但出现错误 docker 文件在我的本地机器上运行良好。有人能告诉我问题是什么吗?

这是我的docker文件

FROM node:9.11.1-alpine as build-stage
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build
# production stage
FROM nginx:1.13.12-alpine as production-stage
COPY nginx/default.conf /etc/nginx/conf.d/
COPY --from=build-stage /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

这是我的 app.yaml

# application: lifeprint2-1222
service: admin-panel
env: flex
runtime: custom
network:
 forwarded_ports:
   - 80:80
# eof

以下是部署代码时出错的详细信息:

Updating service [admin-panel] (this may take several minutes)...⠛DEBUG: Operation [apps/lifeprint2demo/operations/e858191d-28bd-4ce6-b7cc-6f6ea751ed6f] not complete. Waiting to retry.
Updating service [admin-panel] (this may take several minutes)...⠹DEBUG: Operation [apps/lifeprint2demo/operations/e858191d-28bd-4ce6-b7cc-6f6ea751ed6f] complete. Result: {
    "metadata": {
        "user": "[email protected]", 
        "target": "apps/lifeprint2demo/services/admin-panel/versions/20180902t214321", 
        "@type": "type.googleapis.com/google.appengine.v1.OperationMetadataV1", 
        "insertTime": "2018-09-02T16:46:35.958Z", 
        "method": "google.appengine.v1.Versions.CreateVersion"
    }, 
    "done": true, 
    "name": "apps/lifeprint2demo/operations/e858191d-28bd-4ce6-b7cc-6f6ea751ed6f", 
    "error": {
        "message": "An internal error occurred during deployment.", 
        "code": 13
    }
}
Updating service [admin-panel] (this may take several minutes)...failed.                                                                                        
DEBUG: (gcloud.app.deploy) Error Response: [13] An internal error occurred during deployment.
Traceback (most recent call last):
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/calliope/cli.py", line 839, in Execute
    resources = calliope_command.Run(cli=self, args=args)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/calliope/backend.py", line 770, in Run
    resources = command_instance.Run(args)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/surface/app/deploy.py", line 90, in Run
    parallel_build=False)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/command_lib/app/deploy_util.py", line 598, in RunDeploy
    flex_image_build_option=flex_image_build_option)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/command_lib/app/deploy_util.py", line 407, in Deploy
    extra_config_settings)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/api_lib/app/appengine_api_client.py", line 207, in DeployService
    poller=done_poller)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/api_lib/app/operations_util.py", line 315, in WaitForOperation
    sleep_ms=retry_interval)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/api_lib/util/waiter.py", line 254, in WaitFor
    sleep_ms, _StatusUpdate)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/api_lib/util/waiter.py", line 316, in PollUntilDone
    sleep_ms=sleep_ms)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/core/util/retry.py", line 229, in RetryOnResult
    if not should_retry(result, state):
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/api_lib/util/waiter.py", line 310, in _IsNotDone
    return not poller.IsDone(operation)
  File "/Users/nomanmaqsood/google-cloud-sdk/lib/googlecloudsdk/api_lib/app/operations_util.py", line 184, in IsDone
    encoding.MessageToPyValue(operation.error)))
OperationError: Error Response: [13] An internal error occurred during deployment.
ERROR: (gcloud.app.deploy) Error Response: [13] An internal error occurred during deployment. 

答案1

请按照以下说明让您的容器监听 8080 端口本文档,此后您可以省略forwarded_ports部分。

您想要转发 80 到 80 这与默认的 80 到 8080 规则冲突。

干杯,

米格尔。

相关内容