컨테이너·워크플로우 자동화/Airflow로 워크플로우 자동화하기

Airflow Web UI용 관리자 계정 생성 방법

Data Jun 2025. 10. 13. 21:45

Docker Compose 환경에서 Airflow를 설치한 후,
기본적으로는 Web UI(admin 페이지) 에 로그인할 수 있는 계정이 자동으로 생성되지 않습니다.

 

따라서 사용자가 직접 CLI 명령어를 통해 관리자 계정(Admin Account) 을 만들어야 합니다.

 

계정 생성 명령어

아래 명령어를 그대로 터미널에서 실행하면 됩니다 👇

docker compose exec airflow-webserver airflow users create \
    --username admin \
    --firstname Admin \
    --lastname User \
    --role Admin \
    --email admin@example.com \
    --password admin

 

 

명령어 구조 해석

이 명령어는 크게 3단계로 나눠서 이해할 수 있습니다 👇

구분 명령어 설명
docker compose exec airflow-webserver docker compose exec 실행 중인 airflow-webserver 컨테이너 내부에서 명령을 실행하겠다는 뜻
airflow users create airflow users create Airflow CLI를 통해 사용자를 생성하는 명령어
옵션들 (--username 등) --username, --role, --email, --password 등 실제 사용자 계정 정보를 지정하는 인자(arguments)입니다.

 

각 옵션별 상세 의미

옵션 의미 예시 값
--username Web UI 로그인 시 사용할 사용자 이름(ID) admin
--firstname 사용자의 이름(이름 부분) Admin
--lastname 사용자의 성(Last name) User
--role 계정 권한 지정 (Admin / User / Viewir / Op 등) Admin
--email 사용자 이메일 주소(관리자 식별용) admin@example.com
--password 로그인 시 사용할 비밀번호 admin

 

 

실행 흐름 설명

1️⃣ docker compose exec airflow-webserver
→ 현재 실행 중인 Airflow Webserver 컨테이너 내부로 들어가 명령 실행

2️⃣ airflow users create
→ Airflow 내부 사용자 관리 CLI 명령 호출

3️⃣ --username 등 옵션으로 계정 정보 전달
→ PostgreSQL DB 내 ab_user 테이블에 새 유저가 추가됨

4️⃣ 계정 생성이 완료되면 CLI에 다음과 같은 메시지가 출력됩니다 👇

User "admin" created with role "Admin"

 

로그인 확인

명령어가 성공적으로 실행되었다면,
이제 Web UI에 접속하여 로그인할 수 있습니다 👇

 

참고 — Airflow 권한(Role) 종류

역할 설명
Admin 모든 권한 (DAG 관리, 사용자 생성/삭제 가능)
User DAG 실행 및 로그 확인 가능(설정 변경 불가)
Op (Operator) 제한된 DAG 제어 권한
Viewer 읽기 전용 (모니터링 전용 계정)

일반적으로 테스트 환경에서는 Admin 권한으로 생성하고,
운영 환경에서는 User 또는 Viewer 권한으로 제한하는 것이 좋습니다.

 

 

 

정리하면

 

docker compose up만으로는 Web UI 계정이 자동 생성되지 않는다.
반드시 airflow users create 명령어를 실행해 관리자 계정(admin) 을 만들어야 로그인할 수 있다.