如何在没有dockerfile的情况下使用创建和运行dbt项目



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

几个问题:

  1. 我是否需要在dbt_profiles文件夹中已经有一个profiles.yml文件
  2. 当我运行该容器命令时,它在/home/sqlboi/bigquery_bkup/dbt/中创建了一个项目文件,但容器在出现错误后停止。。。容器是否应该在没有错误的情况下继续为dbt运行
  3. 当我尝试运行该项目时,我得到了另一个错误: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

最新更新