本頁面提供 Container-Optimized OS 原始碼的詳細資訊,包括如何存取 Container-Optimized OS 映像檔來源、相關容器工具的來源,以及如何從原始碼建構。
Container-Optimized OS 映像檔來源
Google 提供的 Container-Optimized OS 是 Chromium OS 開放原始碼專案的分支。您可以在 COS 存放區 https://cos.googlesource.com 中找到 Container-Optimized OS 的大部分原始碼。
以下提供部分實用資源,可協助您判定要用於建構映像檔的原始碼:
OS 映像檔內的
/opt/google/chrome/resources/about_os_credits.html
檔案包含用於建構該映像檔的所有套件的版本與授權資訊。核心原始碼:https://cos.googlesource.com/third_party/kernel/+/cos-5.15。
核心設定 (x86):https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/x86/configs/lakitu_defconfig。
核心設定 (Arm):https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/arm64/configs/lakitu_defconfig。
用於建構特定版本的核心原始碼修訂版本 SHA1 也可透過該版本的版本資訊取得。其他映像檔成果,包括經過封存的核心原始碼與核心標頭,也可透過
gs://cos-tools/<build-number>/
底下的公開 Google Cloud Storage Bucket 取得。舉例來說,cos-dev-105-17228-0-0
的成果位於gs://cos-tools/17228.0.0/
底下。
gcloud storage ls gs://cos-tools/17228.0.0/
gs://cos-tools/17228.0.0/about_os_credits.html
gs://cos-tools/17228.0.0/about_os_credits.html.md5
gs://cos-tools/17228.0.0/cos-package-info.json
gs://cos-tools/17228.0.0/cos-package-info.json.md5
gs://cos-tools/17228.0.0/cos_full_payload_dev.bin
gs://cos-tools/17228.0.0/gpu_R470_version
gs://cos-tools/17228.0.0/gpu_R470_version.md5
gs://cos-tools/17228.0.0/gpu_default_version
gs://cos-tools/17228.0.0/gpu_default_version.md5
gs://cos-tools/17228.0.0/gpu_latest_version
gs://cos-tools/17228.0.0/gpu_latest_version.md5
gs://cos-tools/17228.0.0/kernel-headers.tgz
gs://cos-tools/17228.0.0/kernel-headers.tgz.md5
gs://cos-tools/17228.0.0/kernel-src.tar.gz
gs://cos-tools/17228.0.0/kernel-src.tar.gz.md5
gs://cos-tools/17228.0.0/kernel_commit
gs://cos-tools/17228.0.0/kernel_commit.md5
gs://cos-tools/17228.0.0/kernel_info
gs://cos-tools/17228.0.0/kernel_info.md5
gs://cos-tools/17228.0.0/manifest.xml
gs://cos-tools/17228.0.0/manifest.xml.md5
gs://cos-tools/17228.0.0/toolchain.tar.xz
gs://cos-tools/17228.0.0/toolchain.tar.xz.gcs
gs://cos-tools/17228.0.0/toolchain.tar.xz.md5
gs://cos-tools/17228.0.0/toolchain_env
gs://cos-tools/17228.0.0/toolchain_env.md5
gs://cos-tools/17228.0.0/vmlinux
gs://cos-tools/17228.0.0/vmlinux.md5
gs://cos-tools/17228.0.0/lakitu-arm64/
gs://cos-tools/17228.0.0/lakitu/
- 以 Arm 為基礎的映像檔的圖片構件可在
gs://cos-tools/<build-number>/lakitu-arm64/
底下的公開 Cloud Storage 值區中取得。舉例來說,cos-arm64-dev-105-17228-0-0
的成果位於gs://cos-tools/17228.0.0/lakitu-arm64/
底下。
gcloud storage ls gs://cos-tools/17228.0.0/lakitu-arm64/
gs://cos-tools/17228.0.0/lakitu-arm64/about_os_credits.html
gs://cos-tools/17228.0.0/lakitu-arm64/about_os_credits.html.md5
gs://cos-tools/17228.0.0/lakitu-arm64/cos-package-info.json
gs://cos-tools/17228.0.0/lakitu-arm64/cos-package-info.json.md5
gs://cos-tools/17228.0.0/lakitu-arm64/gpu_R470_version
gs://cos-tools/17228.0.0/lakitu-arm64/gpu_R470_version.md5
gs://cos-tools/17228.0.0/lakitu-arm64/gpu_default_version
gs://cos-tools/17228.0.0/lakitu-arm64/gpu_default_version.md5
gs://cos-tools/17228.0.0/lakitu-arm64/gpu_latest_version
gs://cos-tools/17228.0.0/lakitu-arm64/gpu_latest_version.md5
gs://cos-tools/17228.0.0/lakitu-arm64/kernel-headers.tgz
gs://cos-tools/17228.0.0/lakitu-arm64/kernel-headers.tgz.md5
gs://cos-tools/17228.0.0/lakitu-arm64/kernel-src.tar.gz
gs://cos-tools/17228.0.0/lakitu-arm64/kernel-src.tar.gz.md5
gs://cos-tools/17228.0.0/lakitu-arm64/kernel_commit
gs://cos-tools/17228.0.0/lakitu-arm64/kernel_commit.md5
gs://cos-tools/17228.0.0/lakitu-arm64/kernel_info
gs://cos-tools/17228.0.0/lakitu-arm64/kernel_info.md5
gs://cos-tools/17228.0.0/lakitu-arm64/manifest.xml
gs://cos-tools/17228.0.0/lakitu-arm64/manifest.xml.md5
gs://cos-tools/17228.0.0/lakitu-arm64/toolchain.tar.xz
gs://cos-tools/17228.0.0/lakitu-arm64/toolchain.tar.xz.gcs
gs://cos-tools/17228.0.0/lakitu-arm64/toolchain.tar.xz.md5
gs://cos-tools/17228.0.0/lakitu-arm64/toolchain_env
gs://cos-tools/17228.0.0/lakitu-arm64/toolchain_env.md5
gs://cos-tools/17228.0.0/lakitu-arm64/vmlinux
gs://cos-tools/17228.0.0/lakitu-arm64/vmlinux.md5
熟悉 Chromium OS Build 系統的使用者也可以在 https://cos.googlesource.com/cos/overlays/board-overlays/+/master/project-lakitu/ 底下的建構方案中找到實用資訊。
您也可以在 Chromium OS Build 系統所維護的其中一個套件鏡像下方找到個別套件的實際原始碼封存檔。您可以將正確的 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 Build 常見問題和其他 Chromium OS Build 說明文件會說明這套建構系統與套件鏡像如何運作。
容器來源
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 不接受來自大眾的直接貢獻。