Cette page fournit des détails sur le code source de Container-Optimized OS, y compris comment accéder à la source de l'image Container-Optimized OS, la source pour les outils de conteneur associés, et comment compiler à partir de la source.
Source de l'image Container-Optimized OS
Container-Optimized OS de Google est une branche du projet Open Source Chromium OS. Vous pouvez trouver la majorité du code source de Container-Optimized OS dans les dépôts COS (https://cos.googlesource.com).
Voici des ressources utiles pouvant vous aider à déterminer le code source utilisé pour générer l'image :
- Dans l'image de l'OS, le fichier - /opt/google/chrome/resources/about_os_credits.htmlcontient les informations de version et de licence de tous les packages utilisés pour construire cette image.
- Source du noyau: https://cos.googlesource.com/third_party/kernel/+/cos-5.15. 
 Configuration du noyau (x86): https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/x86/configs/lakitu_defconfig.
 Configuration du noyau (Arm): https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/arm64/configs/lakitu_defconfig.
 Le commit SHA1 de la source du noyau utilisée pour créer une version particulière est également fourni dans les notes de version.
- Des artefacts d'image supplémentaires, y compris des sources de noyau et des en-têtes de noyau archivés, sont également disponibles dans un bucket Google Cloud Storage public sous - gs://cos-tools/<build-number>/. Par exemple, les artefacts de- cos-dev-105-17228-0-0se trouvent sous- 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/
- Les artefacts d'image pour les images basées sur Arm sont disponibles dans le bucket Cloud Storage public sous gs://cos-tools/<build-number>/lakitu-arm64/. Par exemple, les artefacts decos-arm64-dev-105-17228-0-0se trouvent sousgs://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
- Les personnes familiarisées avec le système de compilation de Chromium OS peuvent également trouver utiles les recettes de compilation disponibles à l'adresse : https://cos.googlesource.com/cos/overlays/board-overlays/+/master/overlay-lakitu/useful. 
- Les archives de code source actuel pour des packages individuels peuvent également se trouver sous l'un des miroirs de package maintenus par le système de compilation Chromium OS. Vous pouvez y accéder en ajoutant le nom de tarball approprié à l'une des URL suivantes : - https://storage.googleapis.com/chromeos-mirror/gentoo/distfiles/
- https://storage.googleapis.com/chromeos-localmirror/distfiles/- Par exemple, pour télécharger la version 1.19.2 de Kubernetes, utilisez - https://storage.googleapis.com/chromeos-localmirror/distfiles/kubernetes-server-linux-amd64-1.19.2.tar.gz.
 
Les questions fréquentes sur Chromium OS Build et d'autres documents relatifs à Chromium OS Build expliquent le fonctionnement du système de développement et des miroirs de packages.
Source du conteneur
Container-Optimized OS de Google est fourni avec des outils qui téléchargent des conteneurs au moment de l'exécution. Ces conteneurs sont également Open Source. Le tableau suivant répertorie les conteneurs, leur emplacement source et leur emplacement de déploiement.
| Conteneurs | Emplacement de déploiement | 
|---|---|
| Boîte à outils | Container Registry gcr.io/cos-cloud/toolbox | 
| Cos-gpu-installer | Container Registry gcr.io/cos-cloud/cos-gpu-installer | 
| Agent Cloud Logging | Container Registry gcr.io/stackdriver-agents/stackdriver-logging-agent | 
| Agent Konlet | Container Registry gcr.io/gce-containers/konlet | 
Compiler à partir de la source
Suivez les instructions de la page Compiler depuis le dépôt Open Source pour créer une image disque Container-Optimized OS à partir de la source.
Contributions au code source
Container-Optimized OS n'accepte pas les contributions directes du public.