7.2. PM CLI 참조

opm 명령줄 인터페이스(CLI)는 Operator 카탈로그를 생성하고 유지 관리하는 툴입니다.

PM CLI 구문

$ opm <command> [<subcommand>] [<argument>] [<flags>]

표 7.1. 전역 플래그

플래그설명

-skip-tls-verify

번들 또는 인덱스를 가져오는 동안 컨테이너 이미지 레지스트리에 대한 TLS 인증서 확인을 건너뜁니다.

--use-http

번들을 가져올 때 컨테이너 이미지 레지스트리에 일반 HTTP를 사용합니다.

중요

관련 CLI 명령을 포함한 SQLite 기반 카탈로그 형식은 더 이상 사용되지 않는 기능입니다. 더 이상 사용되지 않는 기능은 여전히 OpenShift Container Platform에 포함되어 있으며 계속 지원됩니다. 그러나 이 기능은 향후 릴리스에서 제거될 예정이므로 새로운 배포에는 사용하지 않는 것이 좋습니다.

OpenShift Container Platform에서 더 이상 사용되지 않거나 삭제된 주요 기능의 최신 목록은 OpenShift Container Platform 릴리스 노트에서 더 이상 사용되지 않고 삭제된 기능 섹션을 참조하십시오.

7.2.1. generate

선언적 구성 인덱스에 대한 다양한 아티팩트를 생성합니다.

명령 구문

$ opm generate <subcommand> [<flags>]

표 7.2. generate 하위 명령

하위 명령Description

dockerfile

선언적 구성 인덱스에 대한 Dockerfile을 생성합니다.

표 7.3. generate 플래그

플래그Description

-h, --help

생성에 대한 도움말입니다.

7.2.1.1. dockerfile

선언적 구성 인덱스에 대한 Dockerfile을 생성합니다.

중요

이 명령은 인덱스를 빌드하는 데 사용되는 < dcDir Name>.Dockerfile)과 동일한 디렉터리에 Dockerfile을 생성합니다. 동일한 이름의 Dockerfile이 이미 있는 경우 이 명령이 실패합니다.

추가 레이블을 지정할 때 중복 키가 있는 경우 각 중복 키의 마지막 값만 생성된 Dockerfile에 추가됩니다.

명령 구문

$ opm generate dockerfile <dcRootDir> [<flags>]

표 7.4. dockerfile 플래그 생성

플래그Description

-i, --binary-image (문자열)

카탈로그를 빌드할 이미지입니다. 기본값은 quay.io/operator-framework/opm:latest 입니다.

- L ,--extra-labels (문자열)

생성된 Dockerfile에 포함할 추가 레이블입니다. 레이블에는 key=value 형식이 있습니다.

-h, --help

Dockerfile에 대한 도움말입니다.

참고

공식 Red Hat 이미지로 빌드하려면 registry.redhat.io/openshift4/ose-operator-registry:v4.12 값을 -i 플래그와 함께 사용합니다.

7.2.2. 인덱스

기존 Operator 번들에서 SQLite 데이터베이스 포맷 컨테이너 이미지에 대한 Operator 인덱스를 생성합니다.

중요

OpenShift Container Platform 4.11부터 기본 Red Hat 제공 Operator 카탈로그는 파일 기반 카탈로그 형식으로 제공됩니다. 더 이상 사용되지 않는 SQLite 데이터베이스 형식으로 릴리스된 4.10을 통한 OpenShift Container Platform 4.6의 기본 Red Hat 제공 Operator 카탈로그입니다.

SQLite 데이터베이스 형식과 관련된 opm 하위 명령, 플래그 및 기능은 더 이상 사용되지 않으며 향후 릴리스에서 제거됩니다. 기능은 계속 지원되며 더 이상 사용되지 않는 SQLite 데이터베이스 형식을 사용하는 카탈로그에 사용해야 합니다.

opm index prune 와 같은 SQLite 데이터베이스 형식을 사용하기 위한 많은 opm 하위 명령과 플래그는 파일 기반 카탈로그 형식으로 작동하지 않습니다. 파일 기반 카탈로그 작업에 대한 자세한 내용은 "추가 리소스"를 참조하십시오.

명령 구문

$ opm index <subcommand> [<flags>]

표 7.5. index 하위 명령

하위 명령설명

add

인덱스에 Operator 번들을 추가합니다.

prune

지정된 패키지를 제외한 모든 인덱스를 정리합니다.

prune-stranded

특정 이미지와 연결되지 않은 번들인 stranded 번들의 인덱스를 정리합니다.

rm

인덱스에서 전체 Operator를 삭제합니다.

7.2.2.1. add

인덱스에 Operator 번들을 추가합니다.

명령 구문

$ opm index add [<flags>]

표 7.6. 인덱스 추가 플래그

플래그설명

-i, --binary-image

on-image opm 명령의 컨테이너 이미지

-u,--build-tool (문자열)

컨테이너 이미지를 빌드하는 툴: podman (기본값) 또는 docker. --container-tool 플래그의 일부를 재정의합니다.

-b,--bundles (문자열)

추가할 번들의 쉼표로 구분된 목록입니다.

-c,--container-tool (문자열)

저장 및 빌드용 컨테이너 이미지(예: docker 또는 podman )와 상호 작용하는 툴입니다.

-f,--from-index (문자열)

추가할 이전 인덱스입니다.

--generate

활성화된 경우 Dockerfile만 생성하여 로컬 디스크에 저장합니다.

--mode (문자열)

채널 그래프 업데이트 방법을 정의하는 그래프 업데이트 모드(기본값), semver 또는 semver-skippatch.

-d,--out-dockerfile (문자열)

선택 사항: Dockerfile을 생성하는 경우 파일 이름을 지정합니다.

--permissive

레지스트리 로드 오류를 허용합니다.

-p,--pull-tool (문자열)

컨테이너 이미지를 가져오는 툴: none (기본값), docker 또는 podman. --container-tool 플래그의 일부를 재정의합니다.

-t,--tag (문자열)

빌드 중인 컨테이너 이미지의 사용자 지정 태그입니다.

7.2.2.2. prune

지정된 패키지를 제외한 모든 인덱스를 정리합니다.

명령 구문

$ opm index prune [<flags>]

표 7.7. 인덱스 정리 플래그

플래그설명

-i, --binary-image

on-image opm 명령의 컨테이너 이미지

-c,--container-tool (문자열)

저장 및 빌드용 컨테이너 이미지(예: docker 또는 podman )와 상호 작용하는 툴입니다.

-f,--from-index (문자열)

정리할 인덱스입니다.

--generate

활성화된 경우 Dockerfile만 생성하여 로컬 디스크에 저장합니다.

-d,--out-dockerfile (문자열)

선택 사항: Dockerfile을 생성하는 경우 파일 이름을 지정합니다.

-p,--packages (문자열)

쉼표로 구분된 보관할 패키지 목록입니다.

--permissive

레지스트리 로드 오류를 허용합니다.

-t,--tag (문자열)

빌드 중인 컨테이너 이미지의 사용자 지정 태그입니다.

7.2.2.3. prune-stranded

특정 이미지와 연결되지 않은 번들인 stranded 번들의 인덱스를 정리합니다.

명령 구문

$ opm index prune-stranded [<flags>]

표 7.8. 인덱스 prune-stranded 플래그

플래그설명

-i, --binary-image

on-image opm 명령의 컨테이너 이미지

-c,--container-tool (문자열)

저장 및 빌드용 컨테이너 이미지(예: docker 또는 podman )와 상호 작용하는 툴입니다.

-f,--from-index (문자열)

정리할 인덱스입니다.

--generate

활성화된 경우 Dockerfile만 생성하여 로컬 디스크에 저장합니다.

-d,--out-dockerfile (문자열)

선택 사항: Dockerfile을 생성하는 경우 파일 이름을 지정합니다.

-p,--packages (문자열)

쉼표로 구분된 보관할 패키지 목록입니다.

--permissive

레지스트리 로드 오류를 허용합니다.

-t,--tag (문자열)

빌드 중인 컨테이너 이미지의 사용자 지정 태그입니다.

7.2.2.4. rm

인덱스에서 전체 Operator를 삭제합니다.

명령 구문

$ opm index rm [<flags>]

표 7.9. index rm 플래그

플래그설명

-i, --binary-image

on-image opm 명령의 컨테이너 이미지

-u,--build-tool (문자열)

컨테이너 이미지를 빌드하는 툴: podman (기본값) 또는 docker. --container-tool 플래그의 일부를 재정의합니다.

-c,--container-tool (문자열)

저장 및 빌드용 컨테이너 이미지(예: docker 또는 podman )와 상호 작용하는 툴입니다.

-f,--from-index (문자열)

삭제할 이전 인덱스입니다.

--generate

활성화된 경우 Dockerfile만 생성하여 로컬 디스크에 저장합니다.

-o,--operators (문자열)

삭제할 Operator의 쉼표로 구분된 목록입니다.

-d,--out-dockerfile (문자열)

선택 사항: Dockerfile을 생성하는 경우 파일 이름을 지정합니다.

-p,--packages (문자열)

쉼표로 구분된 보관할 패키지 목록입니다.

--permissive

레지스트리 로드 오류를 허용합니다.

-p,--pull-tool (문자열)

컨테이너 이미지를 가져오는 툴: none (기본값), docker 또는 podman. --container-tool 플래그의 일부를 재정의합니다.

-t,--tag (문자열)

빌드 중인 컨테이너 이미지의 사용자 지정 태그입니다.

7.2.3. init

olm.package 선언적 구성 Blob을 생성합니다.

명령 구문

$ opm init <package_name> [<flags>]

표 7.10. init 플래그

플래그설명

-c,--default-channel (문자열)

지정되지 않은 경우 서브스크립션의 기본 채널입니다.

-d,--description (문자열)

Operator의 README.md 또는 기타 문서 경로입니다.

-i,--icon (문자열)

패키지 아이콘 경로입니다.

-o, --output(문자열)

출력 형식: json (기본값) 또는 yaml.

7.2.4. migrate

VMDK 데이터베이스 형식 인덱스 이미지 또는 데이터베이스 파일을 파일 기반 카탈로그로 마이그레이션합니다.

중요

관련 CLI 명령을 포함한 SQLite 기반 카탈로그 형식은 더 이상 사용되지 않는 기능입니다. 더 이상 사용되지 않는 기능은 여전히 OpenShift Container Platform에 포함되어 있으며 계속 지원됩니다. 그러나 이 기능은 향후 릴리스에서 제거될 예정이므로 새로운 배포에는 사용하지 않는 것이 좋습니다.

OpenShift Container Platform에서 더 이상 사용되지 않거나 삭제된 주요 기능의 최신 목록은 OpenShift Container Platform 릴리스 노트에서 더 이상 사용되지 않고 삭제된 기능 섹션을 참조하십시오.

명령 구문

$ opm migrate <index_ref> <output_dir> [<flags>]

표 7.11. migrate 플래그

플래그설명

-o, --output(문자열)

출력 형식: json (기본값) 또는 yaml.

7.2.5. render

제공된 인덱스 이미지, 번들 이미지 및 SQLite 데이터베이스 파일에서 선언적 구성 Blob을 생성합니다.

명령 구문

$ opm render <index_image | bundle_image | sqlite_file> [<flags>]

표 7.12. render 플래그

플래그설명

-o, --output(문자열)

출력 형식: json (기본값) 또는 yaml.

7.2.6. serve

GRPC 서버를 통해 선언적 구성을 제공합니다.

참고

선언적 구성 디렉터리는 시작 시 service 명령에 의해 로드됩니다. 이 명령을 시작한 후 선언적 구성에 대한 변경 사항은 제공된 콘텐츠에 반영되지 않습니다.

명령 구문

$ opm serve <source_path> [<flags>]

표 7.13. serve 플래그

플래그설명

--cache-dir (문자열)

이 플래그를 설정하면 서버 캐시 디렉터리를 동기화하고 유지합니다.

--cache-enforce-integrity

캐시가 없거나 유효하지 않은 경우 오류와 함께 종료합니다. --cache-dir 플래그가 설정되어 있고 --cache-only 플래그가 false 인 경우 기본값은 true 입니다. 그렇지 않으면 기본값은 false 입니다.

--cache-only

서비스 캐시를 동기화하고 서비스하지 않고 종료됩니다.

--debug

디버그 로깅을 활성화합니다.

h, --help

서빙에 대한 도움말입니다.

-p,--port (문자열)

서비스의 포트 번호입니다. 기본값은 50051 입니다.

--pprof-addr (문자열)

시작 프로파일링 끝점의 주소입니다. 형식은 Addr:Port 입니다.

-t,--termination-log (문자열)

컨테이너 종료 로그 파일의 경로입니다. 기본값은 /dev/termination-log 입니다.

7.2.7. 검증

지정된 디렉터리에서 선언적 구성 JSON 파일의 유효성을 검사합니다.

명령 구문

$ opm validate <directory> [<flags>]