사전 순회하기
키-값 데이터로 사용자를 생성합니다.
사전 순회하기은(는) CoddyKit의 무료 DevOps Bootcamp 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 DevOps Bootcamp 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
목록만으로는 부족합니다
사용자를 만들려면 이름 외에도 그룹, 셸, 상태가 필요합니다. 단순한 목록에는 이런 정보를 담을 수 없습니다. 딕셔너리 목록이 필요합니다. 🗂️
딕셔너리 목록
각 목록 항목은 키-값 쌍으로 이루어진 작은 딕셔너리가 됩니다. 그러면 한 번의 반복에서 이름이 지정된 여러 필드를 사용할 수 있습니다.
loop:
- { name: alice, group: admin }
- { name: bob, group: dev }item.key로 키에 접근하기
item이 딕셔너리라면 item.fieldname으로 각 필드를 읽습니다. 따라서 item.name과 item.group을 사용하면 현재 항목에서 값을 가져올 수 있습니다.
- name: Add users
ansible.builtin.user:
name: "{{ item.name }}"
group: "{{ item.group }}"
loop:
- { name: alice, group: admin }
- { name: bob, group: dev }더 깔끔한 여러 줄 형식
한 줄에 중괄호를 모두 쓰면 복잡해집니다. 항목에 키가 많을 때는 가독성을 위해 각 딕셔너리를 여러 줄에 걸쳐 작성합니다.
loop:
- name: alice
group: admin
shell: /bin/bash
- name: bob
group: dev
shell: /bin/zsh변수에서 목록 가져오기
딕셔너리 목록을 변수로 정의한 다음 그 목록에 대해 반복합니다. 데이터는 한곳에 모이고 작업은 짧으며 재사용하기 쉬워집니다.
vars:
users:
- { name: alice, group: admin }
tasks:
- ansible.builtin.user:
name: "{{ item.name }}"
loop: "{{ users }}"실제 딕셔너리에 대해 반복하기
키-값 쌍으로 이루어진 실제 딕셔너리를 반복하려면 dict2items 필터를 적용하여 각 쌍을 반복 가능한 항목으로 바꿉니다.
loop: "{{ ports | dict2items }}"item.key와 item.value
dict2items를 적용하면 각 항목에서 item.key와 item.value를 사용할 수 있습니다. 이는 원래 매핑의 이름과 해당 데이터를 나타냅니다.
- ansible.builtin.debug:
msg: "{{ item.key }} = {{ item.value }}"
loop: "{{ settings | dict2items }}"선택적 키가 섞인 경우
모든 항목에 모든 키가 필요한 것은 아닙니다. loop와 default 필터를 함께 사용하면 누락된 필드에 적절한 기본값을 지정할 수 있습니다.
shell: "{{ item.shell | default('/bin/sh') }}"딕셔너리로 데이터를 깔끔하게 유지하기
항목별로 관련 필드를 묶으면 데이터와 로직이 분리됩니다. 사용자를 수정할 때는 작업 자체가 아니라 데이터만 수정하면 됩니다.
완전한 멱등성 유지
각 딕셔너리 반복은 별도의 모듈 호출이므로 Ansible은 단순한 목록을 사용할 때와 마찬가지로 사용자별로 changed 또는 ok를 보고합니다.
대량 구성에 적합합니다
사용자, 가상 호스트, 방화벽 규칙처럼 항목마다 여러 속성이 있는 모든 데이터에 딕셔너리 목록이 잘 맞습니다.
빠른 확인
딕셔너리 목록에 대해 반복하고 있습니다. 필드는 어떻게 읽습니까?
복습: 딕셔너리 반복
딕셔너리 목록에 대해 반복하고 item.name 필드를 읽었으며, 실제 맵에는 dict2items를 사용했습니다. 다음은 중첩 반복입니다. 🎉
AI 튜터와 함께 DevOps Bootcamp을(를) 배우세요 — 무료
브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.
- 코스
- 142
- 레슨
- 568
자주 묻는 질문
“사전 순회하기” 강의는 무료인가요?
네 — “사전 순회하기” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 DevOps Bootcamp 강의 전체를 잠금 해제할 수 있습니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.
“사전 순회하기”에서 뭘 배우나요?
키-값 데이터로 사용자를 생성합니다. 브라우저에서 직접 실행하는 실습 코드로 DevOps Bootcamp을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
DevOps Bootcamp을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 DevOps Bootcamp은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“사전 순회하기” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 DevOps Bootcamp 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 DevOps Bootcamp 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.