Я использую репозиторий https://github.com/tuanavu/airflow-tutorial git для запуска воздушного потока в контейнере docker, но вместе с ним я хочу установить дополнительные требования.
Я пытаясь установить git и несколько других зависимостей, для этого я создал Dockerfile в каталоге airflow-tutorial. и добавил в файл следующие строки.
RUN apt-get update && \
apt-get install -y git
RUN pip install dataclasses
, затем пытается построить его с помощью docker-compose up --build
, но он продолжает терпеть неудачу, и ошибка
ModuleNotFoundError: No module named 'dataclasses'
работает отлично без моего Dockerfile. Может ли кто-нибудь помочь мне решить эту проблему?
Docker -compose.yml file
version: '3'
services:
postgres:
image: postgres:12.3
environment:
- POSTGRES_USER=airflow
- POSTGRES_PASSWORD=airflow
- POSTGRES_DB=airflow
ports:
- "5433: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,s3
PYTHON_DEPS: sqlalchemy==1.2.0
restart: always
depends_on:
- postgres
environment:
- LOAD_EX=n
- EXECUTOR=Local
- FERNET_KEY=jsDPRErfv8Z_eVTnGfF8ywd19j4pyqE3NpdUBA_oRTo=
- SSH_AUTH_SOCK=/ssh-agent
volumes:
- /home/awaish/work/airflow/dags1:/usr/local/airflow/dags
- /usr/bin/ssh-agent:/ssh-agent
# Uncomment to include custom plugins
# - ./plugins:/usr/local/airflow/plugins
ports:
- "8080:8080"
command: webserver
healthcheck:
test: ["CMD-SHELL", "[ -f /usr/local/airflow/airflow-webserver.pid ]"]
interval: 30s
timeout: 30s
retries: 3
и Dockerfile
#WORKDIR /usr/src/app
FROM python3.7
RUN apt-get update && \
apt-get install -y git
RUN pip3 install dataclasses
RUN pip3 install git+ssh://git@bitbucket.org/myspace/utilities.git@master