docker config inspect 명령으로 config 상세 정보 확인 방법

DockerBeginner
지금 연습하기

소개

이 랩에서는 docker config inspect 명령을 사용하여 Docker config 에 대한 자세한 정보를 확인하는 방법을 배우게 됩니다. 먼저, Docker swarm 내에서 민감하지 않은 구성 데이터를 관리하기 위한 기본적인 단계인 파일에서 Docker config 를 생성하는 것으로 시작합니다.

생성 후에는 생성된 config 를 이름과 고유 ID 를 사용하여 검사하는 방법을 탐구하여 config 세부 정보에 액세스하는 다양한 방법을 보여줍니다. 마지막으로, 표시된 정보를 사용자 정의하기 위해 --format 플래그를 사용하여 docker config inspect 명령의 출력을 형식화하는 방법을 배우게 됩니다.

Docker config 생성

이 단계에서는 Docker config 를 생성하는 방법을 배우게 됩니다. Docker config 는 swarm 내의 서비스에서 액세스할 수 있는 구성 파일과 같은 민감하지 않은 정보를 저장하는 데 사용됩니다.

먼저, 간단한 구성 파일을 만들어 보겠습니다. ~/project 디렉토리에 샘플 내용이 포함된 my_config.txt라는 파일을 생성합니다.

echo "This is my sample configuration." > ~/project/my_config.txt

이제 docker config create 명령을 사용하여 이 파일에서 Docker config 를 생성할 수 있습니다. 기본 구문은 docker config create <config_name> <file_path>입니다.

docker config create my_config ~/project/my_config.txt

새로 생성된 config 의 ID 가 콘솔에 출력되는 것을 볼 수 있습니다. 이는 config 가 성공적으로 생성되었음을 나타냅니다.

config 가 생성되었는지 확인하려면 docker config ls 명령을 사용하여 모든 Docker config 를 나열할 수 있습니다.

docker config ls

출력에 my_config가 ID 및 생성 시간과 함께 나열되는 것을 볼 수 있습니다.

이름으로 config 검사

이 단계에서는 이름을 사용하여 Docker config 를 검사하는 방법을 배우게 됩니다. docker config inspect 명령을 사용하면 특정 config 에 대한 자세한 정보를 볼 수 있습니다.

이전 단계에서 생성한 config 인 my_config를 검사하려면 docker config inspect 명령 다음에 config 이름을 사용합니다.

docker config inspect my_config

이 명령은 my_config config 에 대한 ID, 생성 시간 및 구성 데이터 내용과 같은 다양한 세부 정보를 포함하는 JSON 객체를 출력합니다.

출력은 config 의 속성에 대한 포괄적인 보기를 제공합니다. ID, CreatedAt, UpdatedAt, Spec, 및 Version 필드를 볼 수 있습니다. Spec 필드에는 실제 구성 데이터가 포함되어 있으며, 이는 base64 로 인코딩됩니다.

ID 로 config 검사

이 단계에서는 ID 를 사용하여 Docker config 를 검사하는 방법을 배우게 됩니다. 이름으로 검사하는 것이 편리하지만, ID 를 사용하는 것도 가능하며 특정 시나리오에서 유용할 수 있습니다.

먼저, 앞서 생성한 my_config의 ID 를 검색해 보겠습니다. docker config ls 명령의 출력에서 ID 를 얻을 수 있습니다.

docker config ls

my_config 항목에 대한 출력에서 ID 열을 찾습니다. 이 ID 를 복사합니다.

이제 docker config inspect 명령을 사용하고 방금 복사한 config ID 를 입력합니다. <config_id>를 실제 ID 로 바꿉니다.

docker config inspect <config_id>

예를 들어, ID 가 abc123def456인 경우 명령은 다음과 같습니다.

docker config inspect abc123def456

이 명령은 이름으로 검사할 때와 동일한 자세한 JSON 출력을 생성하여 config 의 속성에 대한 정보를 제공합니다.

ID 로 검사하는 것은 유사한 이름을 가진 여러 config 가 있거나 config ID 에 의존하는 스크립트로 작업할 때 특히 유용합니다.

--format 을 사용하여 출력 형식 지정

이 단계에서는 --format 플래그를 사용하여 docker config inspect 명령의 출력 형식을 지정하는 방법을 배우게 됩니다. 이는 JSON 출력에서 특정 정보를 더 읽기 쉬운 형식으로 추출하려는 경우 유용합니다.

--format 플래그는 Go 의 text/template 패키지를 사용합니다. 표시하려는 필드와 형식을 지정할 수 있습니다.

my_config의 ID 와 생성 시간만 표시해 보겠습니다. 다음 형식 문자열을 사용할 수 있습니다: {{.ID}} {{.CreatedAt}}.

docker config inspect --format '{{.ID}} {{.CreatedAt}}' my_config

이 명령은 my_config의 ID 와 생성 시간을 공백으로 구분하여 출력합니다.

JSON 출력 내의 중첩된 필드에도 액세스할 수 있습니다. 예를 들어, Spec.Name 아래에 있는 config 의 이름에 액세스하려면 {{.Spec.Name}}을 사용합니다.

config 의 이름과 base64 로 인코딩된 데이터를 표시해 보겠습니다.

docker config inspect --format 'Name: {{.Spec.Name}}, Data: {{.Spec.Data}}' my_config

이 명령은 config 의 이름과 base64 로 인코딩된 데이터를 더 구조화된 형식으로 출력합니다.

--format 플래그는 Docker 명령의 출력을 사용자 정의하고 필요한 정보를 추출하는 강력한 도구입니다.

요약

이 랩에서는 docker config create 명령을 사용하여 파일에서 Docker config 를 생성하고 docker config ls로 생성을 확인하는 방법을 배웠습니다. 그런 다음 docker config inspect 명령을 사용하여 Docker config 를 검사하여 자세한 정보를 확인하는 방법을 살펴보고, config 를 이름으로 검사하는 방법을 시연했습니다.