为何`cloudnativelabs/whats-my-ip`镜像无法在Cloud Run上运行?
在GCP Cloud Run运行
cloudnativelabs/whats-my-ip镜像启动失败问题 我尝试在GCP Cloud Run上运行cloudnativelabs/whats-my-ip镜像,但启动失败,报错信息如下:
/home/server: line 1: syntax error: unexpected "("
Container called exit(2).
该镜像包含一个Go语言编写的程序,但报错显示系统似乎将其当作Shell脚本执行——运行二进制文件不会出现这类语法错误。我需要明确以下问题:
- 启动失败的根源是什么?
- 系统是否真的把入口点识别成了Shell脚本?如果是,原因是什么?
- 这是否和
exec format error问题重复?目前来看报错信息不同,且Docker Hub镜像的架构和Cloud Run是匹配的。
复现步骤
Terraform配置
resource "google_cloud_run_v2_service" "cloud-run-test" { name = "cloud-run-test" location = "europe-central2" template { containers { image = "cloudnativelabs/whats-my-ip" } } }
执行命令
$ terraform init $ terraform apply $ gcloud logging read 'logName:projects/PROJECT_ID/logs/run.googleapis.com%2F' --format 'text(logName, textPayload, timestamp)' --project PROJECT_ID
日志输出
--- log_name: projects/PROJECT_ID/logs/run.googleapis.com%2Fvarlog%2Fsystem text_payload: Container called exit(2). timestamp: 2023-12-09T03:40:23.628609204Z --- log_name: projects/PROJECT_ID/logs/run.googleapis.com%2Fstderr text_payload: /home/server: line 1: syntax error: unexpected "(" timestamp: 2023-12-09T03:40:22.632415Z
相关实验内容已整理到独立文档中。
内容的提问来源于stack exchange,提问作者x-yuri
相关产品推荐
相关产品推荐

