gpt4 book ai didi

google-cloud-platform - 在 Google Cloud Build 期间在 Google Cloud SQL 上运行 node.js 数据库迁移

转载 作者:行者123 更新时间:2023-12-02 20:57:45 26 4
gpt4 key购买 nike

我想在 Cloud Build 过程中运行用 node.js 编写的数据库迁移。

当前正在执行数据库迁移命令,但 Cloud Build 进程似乎无法通过 IP 地址和用户名/密码连接到 Cloud SQL。

最佳答案

Cloud SQL 的情况下和 Node.js 看起来像这样:

steps:
# Install Node.js dependencies
- id: yarn-install
name: node:18
entrypoint: yarn
args: ["install", "--frozen-lockfile"]
waitFor: ["-"]

# Install Cloud SQL proxy
- id: proxy-install
name: node:18
entrypoint: sh
args:
- "-c"
- "wget https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.4.0/cloud-sql-proxy.linux.amd64 -O cloud_sql_proxy && chmod +x cloud_sql_proxy"
waitFor: ["-"]

# Migrate database schema to the latest version
- id: migrate
name: node:18
entrypoint: sh
args:
- "-c"
- "mkdir /cloudsql; chmod 777 /cloudsql; (./cloud_sql_proxy --unix-socket /cloudsql <CLOUD_SQL_CONNECTION> & sleep 2) && yarn knex migrate:latest"
timeout: "1200s"
waitFor: ["yarn-install", "proxy-install"]
timeout: "1200s"

您将启动yarn install并下载Cloud SQL Proxy在平行下。完成这两个步骤后,您运行启动代理,等待 2 秒,最后运行 yarn knex migrate:latest .

要实现此功能,您需要 Cloud SQL Admin API在您的 GCP 项目中启用。

哪里<CLOUD_SQL_INSTANCE>是您的 Cloud SQL 实例连接名称,可以在 here 中找到。您的 SQL 连接设置中将使用相同的名称,例如host=/cloudsql/example:us-central1:pg13 .

此外,请确保 Cloud Build 服务帐号在数据库实例所在的 GCP 项目中具有“Cloud SQL Client”角色。

关于google-cloud-platform - 在 Google Cloud Build 期间在 Google Cloud SQL 上运行 node.js 数据库迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52352103/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com