CPN 한국어 자습서 · 외부 문서 한국어 미러
UV 문서 · Guides
Using uv in GitLab CI/CD · 원문: docs.astral.sh/uv/guides/integration/gitlab/
아래는 원문을 한국어로 옮긴 미러입니다. 코드·명령은 원문 그대로이며, 가장 최신 정보는 하단 원문 링크에서 확인하세요.
Astral은 uv가 사전 설치된 Docker 이미지를 배포합니다. 워크플로우 요구사항에 맞는 이미지 변형을 선택할 수 있습니다.
.gitlab-ci.yml 예시:
variables:
UV_VERSION: "0.11.24"
PYTHON_VERSION: "3.12"
BASE_LAYER: trixie-slim
# GitLab CI creates a separate mountpoint for the build directory,
# so we need to copy instead of using hard links.
UV_LINK_MODE: copy
uv:
image: ghcr.io/astral-sh/uv:$UV_VERSION-python$PYTHON_VERSION-$BASE_LAYER
script:
# your `uv` commands
참고: distroless 이미지의 경우 엔트리포인트를 지정합니다:
uv:
image:
name: ghcr.io/astral-sh/uv:$UV_VERSION
entrypoint: [""]
# ...
실행 간 uv 캐시 디렉터리를 캐싱하면 성능이 향상됩니다:
uv-install:
variables:
UV_CACHE_DIR: .uv-cache
cache:
- key:
files:
- uv.lock
paths:
- $UV_CACHE_DIR
script:
# Your `uv` commands
after_script:
- uv cache prune --ci
작업 완료 시 uv cache prune --ci를 실행하면 캐시 크기를 줄이는 데 도움이 됩니다.
uv pip 인터페이스를 사용할 때는 기본적으로 가상환경이 필요합니다. --system 플래그 또는 UV_SYSTEM_PYTHON 변수를 통해 시스템 환경 설치를 활성화합니다.
워크플로우 수준에서 변수를 설정합니다:
variables: UV_SYSTEM_PYTHON: 1 # [...]
특정 호출에서 이 동작을 비활성화하려면 --no-system을 사용합니다. 캐싱 시 uv.lock 대신 requirements.txt 또는 pyproject.toml을 캐시 키 파일로 사용하는 것을 고려합니다.
원문(영어): https://docs.astral.sh/uv/guides/integration/gitlab/ · 본 문서는 학습용 한국어 번역이며 원본의 권리는 원저작자(Astral)에게 있습니다.
원문(영어): https://docs.astral.sh/uv/guides/integration/gitlab/