Menu Close

2.8.3. 빌드 중 입력 보안

일부 시나리오에서는 빌드 작업을 할 때 종속 리소스에 액세스하기 위한 인증서가 필요하지만 빌드에서 생성한 최종 애플리케이션 이미지에서 해당 인증서가 사용 가능한 것은 바람직하지 않습니다. 이 목적을 위해 입력 보안을 정의할 수 있습니다.

예를 들어 Node.js 애플리케이션을 빌드할 때 Node.js 모듈에 맞게 개인용 미러를 설정할 수 있습니다. 이 개인용 미러에서 모듈을 다운로드하려면 URL, 사용자 이름 및 암호가 포함된 빌드에 사용할 사용자 정의 .npmrc 파일을 제공해야 합니다. 보안상의 이유로 애플리케이션 이미지에 자격 증명을 노출해서는 안 됩니다.

이 예제 시나리오를 사용하여 새 BuildConfig 오브젝트에 입력 보안을 추가할 수 있습니다.

  1. 보안이 없으면 다음과 같이 생성합니다.

    $ oc create secret generic secret-npmrc --from-file=.npmrc=~/.npmrc

    그러면 ~/.npmrc 파일의 base64 인코딩 콘텐츠를 포함하는 secret-npmrc라는 새 보안이 생성됩니다.

  2. 다음과 같이 기존 BuildConfig 오브젝트의 source 섹션에 보안을 추가합니다.

    source:
      git:
        uri: https://github.com/sclorg/nodejs-ex.git
      secrets:
      - destinationDir: .
        secret:
          name: secret-npmrc
  3. BuildConfig 오브젝트에 보안을 포함하려면 다음 명령을 실행합니다.

    $ oc new-build \
        openshift/nodejs-010-centos7~https://github.com/sclorg/nodejs-ex.git \
        --build-secret secret-npmrc