이 규칙 세트는 apt-get install
, passwd
, groupadd
, useradd
, update-ca-certificates
와 같은 명령을 대체하도록 설계되었습니다.
메모
rule_distroless는 베타 소프트웨어이며 아직 안정적인 공개 API가 없지만 많은 사람들이 이미 프로덕션에서 이를 사용하고 있습니다.
이미 사용하고 있는 사람을 보려면 채택자 섹션을 참조하세요.
우리의 예는 새 사용자 그룹 생성 또는 새 홈 디렉토리 생성 과 같은 일반적인 작업을 수행하는 방법을 보여줍니다.
또한 유용할 수 있는 distroless 관련 규칙도 있습니다.
tar
아카이브를 평면화합니다./etc/os-release
파일 생성/usr/lib/locale
더 작게 제거합니다.릴리스 노트의 설치 지침을 참조하세요: https://github.com/GoogleContainerTools/rules_distroless/releases
릴리스 대신 커밋을 사용하려면 저장소의 SHA를 가리킬 수 있습니다.
bzlmod를 사용하면 archive_override
또는 git_override
사용할 수 있습니다. WORKSPACE
의 경우 http_archive
호출을 수정합니다. 예를 들어 WORKSPACE
파일과 함께 커밋 abc123
사용하려면 다음을 수행하세요.
url = "https://github.com/GoogleContainerTools/rules_distroless/releases/download/v0.1.0/rules_distroless-v0.1.0.tar.gz"
url = "https://github.com/GoogleContainerTools/rules_distroless/archive/abc123.tar.gz"
와 같은 GitHub 제공 소스 아카이브로 바꿉니다. url = "https://github.com/GoogleContainerTools/rules_distroless/archive/abc123.tar.gz"
strip_prefix = "rules_distroless-0.1.0"
strip_prefix = "rules_distroless-abc123"
으로 바꾸십시오.sha256
을 업데이트하세요. 이를 수행하는 가장 쉬운 방법은 해당 행을 주석 처리하는 것입니다. 그러면 Bazel이 올바른 값으로 메시지를 인쇄합니다.GitHub 소스 아카이브는 sha256 안정성을 강력하게 보장하지 않습니다. https://github.blog/2023-02-21-update-on-the-future-stability-of-source-code-archives-를 참조하세요. and-해시
이 규칙 세트는 주로 distroless를 지원하기 위해 자금을 지원받습니다. 이 임무를 지원하지 않는 기능 요청에 대해서는 작업을 수행할 수 없습니다. 그러나 프로젝트 목표(예: 다른 압축 형식)와 일치하는 경우 풀 요청을 통해 완벽하게 테스트된 기여를 허용하고 그렇지 않은 요청(예: deb
기반이 아닌 패키징 형식 지원)을 거부할 수 있습니다.
입양자? Pull Request를 보내 여기에 회사를 추가하세요.