Bläddra i källkod

added docker yml for airflow first run

Avik Datta 4 år sedan
förälder
incheckning
4778a474d3
2 ändrade filer med 93 tillägg och 0 borttagningar
  1. 5 0
      docker/airflow_first_run_env_template
  2. 88 0
      docker/first_run.yml

+ 5 - 0
docker/airflow_first_run_env_template

@@ -0,0 +1,5 @@
+USERNAME=''
+FIRSTNAME=''
+LASTNAME=''
+EMAIL=''
+PASSWORD=''

+ 88 - 0
docker/first_run.yml

@@ -0,0 +1,88 @@
+version: '2.2'
+networks:
+    airflow_network:
+        driver: bridge
+services:
+    airflow_db:
+        image: postgres:latest
+        env_file:
+               - /home/igf/airflow_test/secrets/airflow_db_env
+        ports:
+               - "5433:5432"
+        restart: never
+        volumes:
+                - /home/igf/airflow_test/postgres_airflow_db:/var/lib/postgresql/data:rw
+        container_name: airflow_db
+        networks:
+               - airflow_network
+    airflow_results_db:
+        image: postgres:latest
+        env_file:
+               - /home/igf/airflow_test/secrets/airflow_results_db_env
+        ports:
+               - "5434:5432"
+        restart: never
+        volumes:
+                - /home/igf/airflow_test/postgres_airflow_results_db:/var/lib/postgresql/data:rw
+        container_name: airflow_results_db
+        networks:
+               - airflow_network
+    redis-server:
+        image: redis:latest
+        ports:
+              - "6379:6379"
+        restart: never
+        volumes:
+               - /home/igf/airflow_test/secrets/redis.conf:/usr/local/etc/redis/redis.conf:ro
+               - /home/igf/airflow_test/redis_airflow_data:/data:rw
+        container_name: redis-server
+        command: redis-server /usr/local/etc/redis/redis.conf --appendonly yes
+        networks:
+               - airflow_network
+    airflow_initdb:
+        image: apache/airflow:1.10.12
+        env_file:
+                - /home/igf/airflow_test/secrets/airflow_env
+        links:
+                - airflow_db
+                - airflow_results_db
+                - redis-server
+        ports:
+                - "8083:8080"
+        volumes:
+                - /home/igf/airflow_test/logs:/rds/general/user/igf/home/data2/airflow_test/logs:rw
+                - /home/igf/airflow_test/github/igf-airflow-hpc:/rds/general/user/igf/home/data2/airflow_test/github/igf-airflow-hpc:ro
+                - /home/igf/airflow_test/plugin:/rds/general/user/igf/home/data2/airflow_test/plugin:ro
+        depends_on:
+                - airflow_db
+                - airflow_results_db
+                - redis-server
+        restart: never
+        command: initdb
+        container_name: airflow_initdb
+        networks:
+               - airflow_network
+    airflow_create_user:
+        image: apache/airflow:1.10.12
+        env_file:
+                - /home/igf/airflow_test/secrets/airflow_env
+                - /home/igf/airflow_test/secrets/airflow_first_run_env
+        links:
+                - airflow_db
+                - airflow_results_db
+                - redis-server
+        ports:
+                - "8083:8080"
+        volumes:
+                - /home/igf/airflow_test/logs:/rds/general/user/igf/home/data2/airflow_test/logs:rw
+                - /home/igf/airflow_test/github/igf-airflow-hpc:/rds/general/user/igf/home/data2/airflow_test/github/igf-airflow-hpc:ro
+                - /home/igf/airflow_test/plugin:/rds/general/user/igf/home/data2/airflow_test/plugin:ro
+        depends_on:
+                - airflow_db
+                - airflow_results_db
+                - redis-server
+        restart: never
+        command: create_user --username $USERNAME --firstname $FIRSTNAME --lastname $LASTNAME --role Admin --email $EMAIL --password $PASSWORD
+        container_name: airflow_create_user
+        networks:
+               - airflow_network