이 페이지에서는 Container-Optimized OS 이미지 소스에 액세스하는 방법, 관련 컨테이너 도구의 소스, 소스에서 빌드하는 방법을 포함하여 Container-Optimized OS 소스 코드에 대해 자세히 설명합니다.
Container-Optimized OS 이미지 소스
Google의 Container-Optimized OS는 Chromium OS 오픈소스 프로젝트의 한 포크입니다. Container-Optimized OS의 소스 코드는 대부분 COS 저장소(https://cos.googlesource.com)에 있습니다.
이미지를 빌드하는 데 사용된 소스 코드를 확인하는 데 유용한 몇 가지 리소스는 다음과 같습니다.
OS 이미지 내에서
/opt/google/chrome/resources/about_os_credits.html
파일에는 해당 이미지를 빌드하는 데 사용된 모든 패키지의 버전 및 라이선스 정보가 포함되어 있습니다.커널 소스: https://cos.googlesource.com/third_party/kernel/+/cos-5.10.
커널 구성: https://cos.googlesource.com/cos/overlays/board-overlays/+/refs/heads/master/project-lakitu/sys-kernel/lakitu-kernel-5_10/files/base.config-x86_64.
특정 버전을 빌드하는 데 사용된 커널 소스의 커밋 SHA1은 해당 버전의 출시 노트에도 나와 있습니다.보관된 커널 소스 및 커널 헤더를 포함한 추가 이미지 아티팩트는
gs://cos-tools/<build-number>/
의 공개 Google Cloud Storage 버킷에서도 제공됩니다. 예를 들어,cos-dev-70-11021-11-0
의 아티팩트는gs://cos-tools/11021.11.0/
아래에 있습니다.
$ gsutil ls gs://cos-tools/11021.11.0/
gs://cos-tools/11021.11.0/kernel-headers.tgz
gs://cos-tools/11021.11.0/kernel-src.tar.gz
gs://cos-tools/11021.11.0/kernel-src.tar.gz.md5
Chromium OS 빌드 시스템에 익숙한 사용자는 https://cos.googlesource.com/cos/overlays/board-overlays/+/master/project-lakitu/에서 유용한 빌드 레시피를 확인할 수 있습니다.
또한 개별 패키지에 대한 실제 소스 코드 보관 파일은 Chromium OS 빌드 시스템에서 유지관리하는 패키지 미러 중 하나에서도 찾을 수 있습니다. 다음 URL 중 하나에 올바른 tarball 이름을 추가하여 액세스할 수 있습니다.
https://storage.googleapis.com/chromeos-mirror/gentoo/distfiles/
https://storage.googleapis.com/chromeos-localmirror/distfiles/
예를 들어 kubernetes 버전 1.19.2를 다운로드하려면
https://storage.googleapis.com/chromeos-localmirror/distfiles/kubernetes-server-linux-amd64-1.19.2.tar.gz
를 사용합니다.
Chromium OS 빌드 FAQ 및 다른 Chromium OS 빌드 문서에 빌드 시스템 및 패키지 미러의 작동 원리가 설명되어 있습니다.
컨테이너 소스
Google의 Container-Optimized OS는 런타임에 컨테이너를 다운로드하는 몇 가지 도구와 함께 제공됩니다. 이러한 컨테이너도 오픈소스로 제공됩니다. 다음 표에는 컨테이너, 소스 위치, 출시 위치가 나열되어 있습니다.
컨테이너 | 출시 위치 |
---|---|
도구 상자 | Container Registry gcr.io/cos-cloud/toolbox |
Cos-gpu-installer | Container Registry gcr.io/cos-cloud/cos-gpu-installer |
Cloud Logging 에이전트 | Container Registry gcr.io/stackdriver-agents/stackdriver-logging-agent |
Konlet 에이전트 | Container Registry gcr.io/gce-containers/konlet |
소스에서 빌드
오픈소스에서 빌드의 지침을 따라 소스에서 Container-Optimized OS 디스크 이미지를 빌드하세요.
소스 코드 참여
Container-Optimized OS는 공개적인 직접 참여를 허용하지 않습니다.