{"id":18694617,"url":"https://github.com/seilylook/airflow-introduction","last_synced_at":"2026-04-10T21:03:20.776Z","repository":{"id":241082456,"uuid":"804236891","full_name":"seilylook/airflow-introduction","owner":"seilylook","description":"Airflow Introduction Practice","archived":false,"fork":false,"pushed_at":"2024-05-23T05:28:29.000Z","size":10,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-28T03:15:32.719Z","etag":null,"topics":["airflow","dags","docker","postgresql"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/seilylook.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-22T08:03:34.000Z","updated_at":"2024-05-23T05:28:32.000Z","dependencies_parsed_at":null,"dependency_job_id":"22af8a23-2efb-4d06-86bb-698e242248b3","html_url":"https://github.com/seilylook/airflow-introduction","commit_stats":null,"previous_names":["seilylook/airflow-introduction"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seilylook%2Fairflow-introduction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seilylook%2Fairflow-introduction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seilylook%2Fairflow-introduction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/seilylook%2Fairflow-introduction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/seilylook","download_url":"https://codeload.github.com/seilylook/airflow-introduction/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239552553,"owners_count":19657934,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["airflow","dags","docker","postgresql"],"created_at":"2024-11-07T11:11:48.207Z","updated_at":"2025-11-08T11:30:48.931Z","avatar_url":"https://github.com/seilylook.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Airflow Introduction Practice\n\nThis repository is designed for practicing and getting introduced to Apache Airflow, a platform to programmatically author, schedule, and monitor workflows.\n\n## Introduction\n\nApache Airflow is an open-source tool to help you automate workflows. It is used to manage, schedule, and monitor complex data pipelines. With Airflow, you can define workflows as directed acyclic graphs (DAGs) of tasks.\n\n## Installation\n\nTo get started with Airflow, follow these steps:\n\n1. **Clone the repository**:\n\n   ```bash\n   git clone https://github.com/seilylook/airflow-introduction.git\n   ```\n\n2. **Create a virtual environment**:\n\n   ```bash\n   python3 -m virtualenv venv\n   source venv/bin/activate  # On Windows, use `venv\\Scripts\\activate`\n   ```\n\n3. **Install Airflow and dependencies**:\n\n   ```bash\n   pip install apache-airflow\n   ```\n\n4. **Initialize the Airflow database**:\n\n   ```bash\n   airflow db init\n   ```\n\n5. **Start the Airflow web server**:\n\n   ```bash\n   airflow webserver --port 8080\n   ```\n\n6. **Start the Airflow scheduler in a new terminal**:\n   ```bash\n   airflow scheduler\n   ```\n\nYou can now access the Airflow web UI at `http://localhost:8080`.\n\n## Quick Start\n\nHere’s a quick guide to get you started with your first DAG (Directed Acyclic Graph).\n\n1. **Create a DAG file**:\n\n   ```python\n   from airflow import DAG\n   from airflow.operators.dummy import DummyOperator\n   from datetime import datetime\n\n   default_args = {\n       'owner': 'airflow',\n       'depends_on_past': False,\n       'start_date': datetime(2023, 1, 1),\n       'email_on_failure': False,\n       'email_on_retry': False,\n       'retries': 1,\n   }\n\n   dag = DAG(\n       'example_dag',\n       default_args=default_args,\n       description='A simple tutorial DAG',\n       schedule_interval='@daily',\n   )\n\n   start = DummyOperator(task_id='start', dag=dag)\n   end = DummyOperator(task_id='end', dag=dag)\n\n   start \u003e\u003e end\n   ```\n\n2. **Place your DAG file in the DAGs folder**:\n   Copy the above DAG file to the `dags` directory in your Airflow installation path (e.g., `~/airflow/dags`).\n\n3. **Access the DAG in the Airflow UI**:\n   Go to `http://localhost:8080` and check the list of DAGs. You should see `example_dag` in the list.\n\n## Usage\n\nAirflow allows you to create and manage workflows using Python scripts. A typical workflow in Airflow is represented as a DAG (Directed Acyclic Graph) containing tasks. You can use various operators to define these tasks, such as:\n\n- `BashOperator`\n- `PythonOperator`\n- `DummyOperator`\n\nYou can also define dependencies between tasks, set schedules, and configure retry policies.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseilylook%2Fairflow-introduction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseilylook%2Fairflow-introduction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseilylook%2Fairflow-introduction/lists"}