Docker,错误:无法运行迁移:数据库需要引导;
Posted
技术标签:
【中文标题】Docker,错误:无法运行迁移:数据库需要引导;【英文标题】:Docker,Error: cannot run migrations: database needs bootstrapping; 【发布时间】:2019-09-09 12:14:08 【问题描述】:这是我尝试过的
docker run --rm \
> --link kong-database:kong-database \
> -e "KONG_DATABASE=postgres" \
> -e "KONG_PG_HOST=kong-database" \
> kong:latest kong migrations up
但我有
Error: cannot run migrations: database needs bootstrapping; run 'kong migrations bootstrap'
我不明白这实际上意味着什么。如果我尝试
docker run --rm --link kong-database:kong-database -e "KONG_DATABASE=postgres" -e "KONG_PG_HOST=kong-database" kong:latest kong migrations bootstrap
bootstrapping database...
Error: [PostgreSQL error] failed to bootstrap database: ERROR: syntax error at or near "NOT" (150)
我检查了 kong-database
"Id": "d94ac442da9a399c1b865de49904e01085abe1ed8f0871af5830810c4c2a78dd",
"Created": "2019-04-19T07:18:59.534751317Z",
"Path": "docker-entrypoint.sh",
"Args": [
"postgres"
],
"State":
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 18342,
"ExitCode": 0,
"Error": "",
"StartedAt": "2019-04-19T07:19:00.129193458Z",
"FinishedAt": "0001-01-01T00:00:00Z"
为什么我需要引导数据库,为什么会出现问题?
【问题讨论】:
【参考方案1】:您必须在运行 kong 之前引导数据库。 up 命令已弃用并替换为 bootstrap
改变
kong:latest kong migrations up
到
kong:latest kong migrations bootstrap
【讨论】:
以上是关于Docker,错误:无法运行迁移:数据库需要引导;的主要内容,如果未能解决你的问题,请参考以下文章
NodeJS sequelize 自动生成模型并运行迁移 SQL 语法错误
在 Jenkins 中使用 docker Container 链接
我无法在我的 docker compose 中进行 mysql php artisan 迁移。错误 SQLSTATE[HY000] [2002]
如何使用 Docker 在 SQL Server 数据库上运行 EF Core 迁移?