我正在尝试在 Windows 操作系统上使用SQLC生成数据库迁移。根据官方文档,我需要运行 Docker 命令(因为它支持 Postgres over Windows)。如果我docker run --rm -v "${pwd}:/src" -w /src kjconroy/sqlc generate从 CLI 运行,它就可以工作。但是如果我运行make sqlc它会显示错误:docker run --rm -v ":/src" -w /src kjconroy/sqlc 生成解析配置文件时出错。sqlc.yaml 或 sqlc.json:文件不存在make: *** [Makefile:12: sqlc] 错误 1我有这样的文件夹结构:应用程序/移民/询问/sqlc/myquery.sqlD b/sqlc.yaml生成文件我的sqlc.yaml文件有这个:version: "1"packages: - name: "db" path: "./db/sqlc" queries: "./db/query" schema: "./db/migration/" engine: "postgresql" emit_json_tags: true emit_prepared_queries: false emit_interface: false emit_exact_table_names: false还有Makefile这个:sqlc: docker run --rm -v "${pwd}:/src" -w /src kjconroy/sqlc generate.PHONY: sqlc那么,如何从 Makefile 让它工作呢?我在这里没有收到错误?也许字段映射是错误的?
1 回答

aluckdog
TA贡献1847条经验 获得超7个赞
该错误sqlc.yaml or sqlc.json: file does not exist
仅表示sqlc
(在容器中运行)未sqlc.yaml
在/src
. ${pwd}
当启动您要映射到的容器时/src
,问题是它${pwd}
没有像您期望的那样评估app/db
文件夹。这可能是由于:
尝试扩展它(参见GNU Make 文档和这个问题)或者,
它只是没有解析到 db 文件夹
在你的情况下(根据你的评论)它是前者并改变${pwd}
以${CURDIR}
解决问题。
- 1 回答
- 0 关注
- 106 浏览
添加回答
举报
0/150
提交
取消