docker secret ls

docker secret ls

시크릿 목록을 확인하는 명령어예요.

출처: 문서

본문

docker secret ls는 매니저 노드에서 실행해 swarm의 시크릿을 나열해요.

Usage: docker secret ls [OPTIONS]
항목 내용
Description 시크릿 목록 표시
Aliases docker secret list

시크릿 사용에 대한 자세한 내용은 Docker 시크릿으로 민감한 데이터 관리를 참조하세요.

Swarm 이 명령은 Swarm 오케스트레이터와 함께 동작해요.

참고

클러스터 관리 명령이며 swarm 매니저 노드에서 실행해야 해요. 매니저와 워커에 대해 배우려면 문서의 Swarm mode 섹션을 참조하세요.

옵션

옵션 기본값 설명
-f, --filter 주어진 조건으로 출력 필터링
--format 커스텀 템플릿으로 출력 형식 지정: 'table': 열 헤더가 있는 표 형식 출력(기본값) / 'table TEMPLATE': 주어진 Go 템플릿으로 표 형식 출력 / 'json': JSON 출력 / 'TEMPLATE': 주어진 Go 템플릿으로 출력. 템플릿 출력 형식에 대한 자세한 내용은 https://docs.docker.com/go/formatting/ 참조
-q, --quiet ID만 표시

예시

$ docker secret ls

ID                          NAME                        CREATED             UPDATED
6697bflskwj1998km1gnnjr38   q5s5570vtvnimefos1fyeo2u2   6 weeks ago         6 weeks ago
9u9hk4br2ej0wgngkga6rp4hq   my_secret                   5 weeks ago         5 weeks ago
mem02h8n73mybpgqjf0kfi1n0   test_secret                 3 seconds ago       3 seconds ago

필터링 (--filter)

필터링 플래그(-f 또는 --filter) 형식은 key=value 쌍이에요. 필터가 둘 이상이면 플래그를 여러 개 넘기면 돼요 (예: --filter "foo=bar" --filter "bif=baz").

현재 지원되는 필터는 다음과 같아요.

  • id (시크릿의 ID)
  • label (label=<key> 또는 label=<key>=<value>)
  • name (시크릿의 이름)

id

id 필터는 시크릿 ID의 전체 또는 접두어를 매칭해요.

$ docker secret ls -f "id=6697bflskwj1998km1gnnjr38"

ID                          NAME                        CREATED             UPDATED
6697bflskwj1998km1gnnjr38   q5s5570vtvnimefos1fyeo2u2   6 weeks ago         6 weeks ago

label

label 필터는 label의 존재만, 또는 label과 값을 기준으로 시크릿을 매칭해요.

다음 필터는 값에 상관없이 project 라벨이 있는 모든 시크릿을 매칭해요.

$ docker secret ls --filter label=project

ID                          NAME                        CREATED             UPDATED
mem02h8n73mybpgqjf0kfi1n0   test_secret                 About an hour ago   About an hour ago

다음 필터는 값이 project-aproject 라벨이 있는 시크릿만 매칭해요.

$ docker secret ls --filter label=project=project-a

ID                          NAME                        CREATED             UPDATED
mem02h8n73mybpgqjf0kfi1n0   test_secret                 About an hour ago   About an hour ago

name

name 필터는 시크릿 이름의 전체 또는 접두어를 매칭해요.

다음 필터는 이름이 test로 시작하는 시크릿을 매칭해요.

$ docker secret ls --filter name=test

ID                          NAME                        CREATED             UPDATED
mem02h8n73mybpgqjf0kfi1n0   test_secret                 About an hour ago   About an hour ago

출력 형식 지정 (--format)

--format 옵션은 Go 템플릿으로 시크릿 출력을 보기 좋게 출력해요.

Go 템플릿의 유효한 플레이스홀더는 아래와 같아요.

플레이스홀더 설명
.ID 시크릿 ID
.Name 시크릿 이름
.CreatedAt 시크릿이 생성된 시각
.UpdatedAt 시크릿이 업데이트된 시각
.Labels 시크릿에 할당된 모든 라벨
.Label 이 시크릿의 특정 라벨 값. 예: {{.Label "secret.ssh.key"}}

--format 옵션을 쓰면 secret ls 명령은 템플릿이 선언한 대로 데이터를 출력하거나, table 지시어를 쓸 때는 열 헤더도 함께 포함해요.

다음 예시는 헤더 없는 템플릿을 쓰고 모든 이미지의 IDName 항목을 콜론(:)으로 구분해 출력해요.

$ docker secret ls --format "{{.ID}}: {{.Name}}"

77af4d6b9913: secret-1
b6fa739cedf5: secret-2
78a85c484f71: secret-3

이름과 생성 날짜를 표 형식으로 나열하려면:

$ docker secret ls --format "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}"

ID                  NAME                      CREATED
77af4d6b9913        secret-1                  5 minutes ago
b6fa739cedf5        secret-2                  3 hours ago
78a85c484f71        secret-3                  10 days ago

모든 시크릿을 JSON 형식으로 나열하려면 json 지시어를 쓰세요.

$ docker secret ls --format json
{"CreatedAt":"28 seconds ago","Driver":"","ID":"4y7hvwrt1u8e9uxh5ygqj7mzc","Labels":"","Name":"mysecret","UpdatedAt":"28 seconds ago"}

더 알아보기