i首先提取一个图像:
docker pull ghcr.io/dbt-labs/dbt-bigquery:1.2.latest
然后我试着做一个容器:
docker run --name dbt
-p 8085:8085
-v /home/sqlboi/bigquery_bkup/:/usr/app/
--mount type=bind,source=/home/sqlboi/dbt_profiles/,target=/root/.dbt/
dbt-bigquery:1.2.latest
init myfirstproject
几个问题:
- 我是否需要在dbt_profiles文件夹中已经有一个
profiles.yml
文件 - 当我运行该容器命令时,它在
/home/sqlboi/bigquery_bkup/dbt/
中创建了一个项目文件,但容器在出现错误后停止。。。容器是否应该在没有错误的情况下继续为dbt运行 - 当我尝试运行该项目时,我得到了另一个错误:
fatal: Not a dbt project (or any of the parent directories). Missing dbt_project.yml file
-但dbt_project.yml
文件在由init
创建后可以在/home/sqlboi/bigquery_bkup/dbt/
中找到,那么我如何包含该文件的路径
这里有几个问题:
命令是dbt init
,而不是init
。该命令将为您创建profiles.yml(以及dbt_project.yml文件和一些示例项目文件(。但是…
创建概要文件后,dbt init
将退出,代码为0,因此您的容器无论如何都会停止。dbt是一个CLI实用程序,因此最好在容器中启动一个交互式shell,而不是运行单个命令。但是…
除非你有一个包含.sql和.yml文件的项目来定义你的转换,否则dbt不会做任何事情。您需要将这些文件放入您的容器中。你需要一个用于的Dockerfile