[英]New libraries required Airflow
我目前正在使用 docker-compose up 来运行我从 docker 获得的 apache 气流图像。 但是,当我尝试运行我的 pythonOperator(包含附加库的 python 脚本)时,构建气流时会发生错误。
我的 docker-compose.yml:
version: '3'
services:
postgres:
image: postgres:9.6
environment:
- POSTGRES_USER=airflow
- POSTGRES_PASSWORD=airflow
- POSTGRES_DB=airflow
ports:
- "5432:5432"
webserver:
image: puckel/docker-airflow:1.10.1
build:
context: https://github.com/puckel/docker-airflow.git#1.10.1
dockerfile: Dockerfile
args:
AIRFLOW_DEPS: gcp_api
PYTHON_DEPS: sqlalchemy==1.2.0
restart: always
depends_on:
- postgres
environment:
- LOAD_EX=n
- EXECUTOR=Local
- FERNET_KEY=jsDPRErfv8Z_eVTnGfF8ywd19j4pyqE3NpdUBA_oRTo=
volumes:
- /dags:/usr/local/airflow/dags # My dags files
- /src:/usr/local/airflow/src # my src files and its the one that contain the new libraries
# Uncomment to include custom plugins
# - ./plugins:/usr/local/airflow/plugins
ports:
- "8085:8080"
command: webserver
healthcheck:
test: ["CMD-SHELL", "[ -f /usr/local/airflow/airflow-webserver.pid ]"]
interval: 30s
timeout: 30s
retries: 3
我在运行 docker 时使用的命令:
docker-compose up -d
我收到的错误信息。
谁能告诉我如何解决这个错误? 当我想添加更多 pythonOperator 时,我应该如何安装新包?
您可以在 docker 中安装所需的库,这是快速解决方案:
以root用户身份访问airflow worker的容器ID
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c73425b30981 puckel/docker-airflow:1.10.9 "/entrypoint.sh work…" 7 hours ago Up 7 hours 5555/tcp, 8080/tcp, 8793/tcp airflow_worker_1
docker exec -it --user root c73 /bin/bash
运行 apt get update root@c73425b30981:/usr/local/airflow# apt-get update
然后安装你的python库root@c73425b30981:/usr/local/airflow# pip install Janome
然后你就可以使用 janome 库了
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.