[Apache Airflow] Airflow DB to Postgres(Docker)

less than 1 minute read


Airflow DB to Postgres(Docker)


Postgres Container ์„ค์น˜

# container ์ƒ์„ฑ
docker run -p 5432:5432 --name postgres1 -e POSTGRES_PASSWORD=1234 -d -v psql_data:/var/lib/postgresql/data postgres

# postgres shell ์ ‘์†
docker exec -it postgres1 bash
su - postgres
psql

PostgreSQL DB ๋ฐ DB User ์ƒ์„ฑ

  • Postgres shell์—์„œ DB ๋ฐ DB User ์ƒ์„ฑ
# DB ์ƒ์„ฑ (CREATE DATABASE [db_name])
CREATE DATABASE airflow_db;

# DB USER ์ƒ์„ฑ (CREATE USER [id] with password '[password]';)
CREATE USER admin with password 'admin';

# user ์ƒ์„ฑ ํ™•์ธ
\du

airflow.cfg ์ˆ˜์ •1

# airflow.cfg
sql_alchemy_conn = postgresql+psycopg2://admin:admin@localhost/airflow_db

pycopg2-binary ์„ค์น˜

# ๊ฐ€์ƒํ™˜๊ฒฝ ์ ‘์† ํ›„
pip3 install psycopg2-binary

airflow db ์ดˆ๊ธฐํ™”

# airflow db init
airflow db init

# user ์ƒ์„ฑ
airflow users create -u admin -p admin -f jisu -l park -r Admin -e zsu58@korea.ac.kr

# ์ดˆ๊ธฐํ™” ํ™•์ธ
docker exec -it postgres1 bash
su - postgres
# psql -U [db_user] [db_name]
psql -U admin -d airflow_db

# ์ƒ์„ฑ๋œ ํ…Œ์ด๋ธ” ํ™•์ธ
\dt

# user ํ™•์ธ
SELECT * FROM ab_user;

airflow.cfg ์ˆ˜์ •2

# airflow.cfg
executor = LocalExecutor

ref