확장 이미지 라벨

확장 이미지 라벨 (Extension image labels)

확장 이미지에 추가 정보를 제공하는 데 사용되는 라벨들을 정리한 문서예요.

출처: 문서

본문

확장은 이미지 라벨을 사용해 제목, 설명, 스크린샷 등과 같은 추가 정보를 제공해요.

이 정보는 확장의 개요로 표시되어 사용자가 설치를 선택할 수 있게 해요.

확장의 Dockerfile에서 이미지 라벨을 정의할 수 있어요.

중요: Dockerfile에 필수 라벨 중 하나라도 없으면 Docker Desktop은 확장을 유효하지 않은 것으로 간주하고 Marketplace에 나열하지 않아요.

다음은 확장을 빌드할 때 지정할 수 있거나 지정해야 하는 라벨 목록이에요:

라벨 필수 설명 예시
org.opencontainers.image.title 예 이미지의 사람이 읽을 수 있는 제목(문자열). Docker Desktop의 UI에 나타나요. my-extension
org.opencontainers.image.description 예 이미지에 패키징된 소프트웨어의 사람이 읽을 수 있는 설명(문자열). This extension is cool.
org.opencontainers.image.vendor 예 배포하는 법인, 조직 또는 개인의 이름. Acme, Inc.
com.docker.desktop.extension.api.version 예 확장이 호환되는 Docker Extension 매니저 버전. 시맨틱 버전을 따라야 해요. 특정 버전 0.1.0 또는 제약 표현식: >= 0.1.0, >= 1.4.7, < 2.0. 첫 확장의 경우 docker extension version을 사용해 SDK API 버전을 알고 >= <SDK_API_VERSION>을 지정할 수 있어요.
com.docker.desktop.extension.icon 예 확장 아이콘(형식: .svg, .png, .jpg). https://example.com/assets/image.svg
com.docker.extension.screenshots 예 확장의 세부 정보 페이지에서 사용자에게 표시되는 이미지 URL과 대체 텍스트의 JSON 배열(메타데이터에 나타나는 순서대로). 참고: 권장 크기는 2400x1600 픽셀. [{"alt":"alternative text for image 1", "url":"https://example.com/image1.png"}, {"alt":"alternative text for image2", "url":"https://example.com/image2.jpg"}]
com.docker.extension.detailed-description 예 세부 정보 대화상자에 표시할 확장에 대한 추가 정보(plain text 또는 HTML). My detailed description 또는 <h1>My detailed description</h1>
com.docker.extension.publisher-url 예 세부 정보 대화상자에 표시할 게시자 웹사이트 URL. https://example.com
com.docker.extension.additional-urls 아니요 확장의 세부 정보 페이지에서 사용자에게 표시되는 제목과 추가 URL의 JSON 배열(메타데이터에 나타나는 순서대로). Docker는 해당되면 다음 링크를 표시할 것을 권장해요: 문서, 지원, 서비스 약관, 개인정보 취급방침. [{"title":"Documentation","url":"https://example.com/docs"}, {"title":"Support","url":"https://example.com/bar/support"}, {"title":"Terms of Service","url":"https://example.com/tos"}, {"title":"Privacy policy","url":"https://example.com/privacy"}]
com.docker.extension.changelog 예 현재 버전의 변경 사항만 포함하는 plain text 또는 HTML의 변경 로그. Extension changelog 또는 <p>Extension changelog<ul> <li>New feature A</li> <li>Bug fix on feature B</li></ul></p>
com.docker.extension.account-info 아니요 사용자가 확장의 일부 기능을 사용하기 위해 SaaS 플랫폼에 등록해야 하는지 여부. 필요한 경우 required, 그렇지 않으면 비워 두세요.
com.docker.extension.categories 아니요 확장이 속한 Marketplace 카테고리 목록: ci-cd, container-orchestration, cloud-deployment, cloud-development, database, kubernetes, networking, image-registry, security, testing-tools, utility-tools, volumes. 이 라벨을 지정하지 않으면 사용자가 카테고리로 필터링할 때 확장을 Extensions Marketplace에서 찾을 수 없어요. 2022년 9월 22일 이전에 Marketplace에 게시된 확장은 Docker가 자동 분류했어요. 여러 카테고리인 경우 쉼표 구분 값으로 지정: kubernetes,security 또는 단일 값: kubernetes.

팁: Docker Desktop은 제공된 HTML 콘텐츠에 CSS 스타일을 적용해요. Marketplace 내에서 올바르게 렌더링되는지 확인할 수 있어요. 스타일링 가이드라인을 따르는 것이 권장돼요.

Marketplace에서 확장 미리보기 (Preview the extension in the Marketplace)

이미지 라벨이 예상대로 렌더링되는지 검증할 수 있어요.

게시되지 않은 확장을 만들고 설치하면 Marketplace의 Managed 탭에서 확장을 미리 볼 수 있어요. 목록과 확장 세부 정보 페이지에서 확장 라벨이 어떻게 렌더링되는지 볼 수 있어요.

Marketplace에 이미 나열된 확장 미리보기

latest 같은 태그로 Marketplace에 이미 게시된 확장의 로컬 이미지를 설치하면 로컬 이미지가 "unpublished"로 감지되지 않아요.

게시된 확장으로 나열되지 않은 다른 이미지 이름을 갖도록 이미지를 다시 태그할 수 있어요.

docker tag org/published-extension unpublished-extension을 사용한 후 docker extension install unpublished-extension을 실행하세요.

더 알아보기 (Learn more)