py_layer / py3_image / py_binary

About_work·2023년 4월 28일
0

bazel

목록 보기
1/1

py_layer

  • Python 라이브러리를 -> 컨테이너 이미지 레이어로 묶기 위한, Bazel 빌드 규칙

  • py_layer 규칙은 다음과 같은 인자를 받습니다.

    • name: 빌드 규칙의 이름
    • deps: 레이어를 만들기 위한 Python 라이브러리들을 포함하는 Bazel 의 의존성 리스트
    • filter: 레이어에 포함될 의존성을 필터링하기 위한 문자열, 이 문자열로 시작하는 의존성만 포함합니다.
    • includes: 추가적으로 포함할 의존성 이름들의 리스트
    • excludes: 제외할 의존성 이름들의 리스트

py3_image

  • Python 3 애플리케이션을 실행하기 위한 Docker 이미지를 빌드하기 위한, Bazel 빌드 규칙
  • py3_image 규칙은 다음과 같은 인자를 받습니다.
    • name: 빌드 규칙의 이름
    • base: Docker 이미지 빌드의 베이스 이미지
    • deps: Python 라이브러리들을 포함하는 Bazel 의 의존성 리스트
    • docker_run_flags: Docker 실행 시 추가적으로 설정할 옵션 리스트
    • layers: 레이어를 구성하는 이름 리스트
    • env: Docker 컨테이너에 추가할 환경 변수 딕셔너리
    • entrypoint: Docker 컨테이너가 실행될 때 실행할 명령 리스트. 기본값은 [/usr/bin/python3] 입니다.
    • **kwargs: py_binary 규칙에서 사용하는 추가 인자

py_binary

  • Python 3 소스 코드로부터 파이썬 실행 파일을 생성하기 위한, Bazel 빌드 규칙

  • py_binary 규칙은 다음과 같은 인자를 받습니다.

    • name: 빌드 규칙의 이름
    • srcs: Python 소스 코드 파일 리스트
    • deps: Python 라이브러리들을 포함하는 Bazel 의 의존성 리스트
    • main: 실행 파일의 진입점(main) 함수
    • data: 실행 파일과 함께 패키징할 데이터 파일 리스트
    • resources: 실행 파일과 함께 패키징할 리소스 파일 리스트
    • python_version: 실행 파일을 빌드할 때 사용할 Python 버전. PY2 또는 PY3 를 사용할 수 있습니다.
    • **kwargs: 추가적인 인자들 (예: visibility)
profile
새로운 것이 들어오면 이미 있는 것과 충돌을 시도하라.

0개의 댓글