docker

1. 在项目目录下启动虚拟环境

1.安装pipenv

pip3 install pipenv
  1. 查看pipenv安装在哪
which pipenv
/Users/guolei/Library/Python/3.9/bin/pipenv

3.为了可以全局使用pipenv,需要将pipenv添加到全局变量里
(1)创建全局变量文件

touch ~/.zshrc

(2)打开文件进行编辑

open -e ~/.zshrc

(3)将上面查询到的路径添加进来

export PATH="/Users/guolei/Library/Python/3.9/bin:$PATH"

(4)让该文件有效

source ~/.zshrc
  1. 在当前目录创建python环境,此时多了一个pipfile说明安装成功
pipenv --python 3
image.png
  1. 使用requirements.txt安装项目所需要的包
pipenv install -r requirements.txt

6.安装成功后,会多一个lock文件


image.png
  1. 将我们当前的环境共享给其他人
    只需要复制pipfile,到新的工作目录,然后终端运行
pipenv install 
  1. 查看当前的虚拟环境目录
pipenv --venv

9.删除当前的虚拟环境目录

pipenvv --rm

2. 记录一次完整的部署(dbt-snowflake+airflow+docker)

  1. github创建新的项目,并复制https
https://github.com/CXTV/dbt_env_airflow_v1.git
  1. 本地创建一个项目文件夹,并且初始化git
git init
  1. 创建git ignore
root/
target/
dbt_packages/
logs/
**/__pycache__/
config/
*.cfg
  1. 创建docker-compose.yml文件,并且将下面的链接的内容复制到该文件里,airflow的基本配置
https://airflow.apache.org/docs/apache-airflow/2.8.4/docker-compose.yaml
  1. 运行compose up,airflow运行项目运行成功

  1. 创建python 3.10.0的虚拟环境,使用Pipenv
pipenv --python 3.10.0
  1. 创建requirements.txt,可指定各个包的版本,这里为了方便,省略
dbt-core
dbt-snowflake
  1. 给虚拟环境安装上面的包
pipenv install -r requirements.txt
  1. 启动虚拟环境
pipenv shell 
  1. 更改vscode的环境为虚拟环境


    image.png
  2. 在虚拟环境下,运行dbt init ,创建dbt_demodb项目,将所有的信息填写正确,填写完成后的profiles.yml文件在windows的用户目录.dbt文件夹下

    image.png

  3. 进入到dbt_demodb内,运行dbt debug检查我们的数据库配置是否正确

    image.png

  4. 检测成功后,说明dbt配置成功,在airflow的项目文件夹里创建root/.dbt的文件夹,并且将上面的profiles.yml复制进来

    image.png

  5. 复制dbt的operator到plugins里


    image.png
  6. 创建Dockerfile

FROM apache/airflow:2.8.4 

COPY requirements.txt requirements.txt

RUN pip install --user --upgrade pip

RUN pip install -r requirements.txt
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容