En esta página, se proporcionan detalles sobre el código fuente de Container-Optimized OS, como cómo acceder a la fuente de imágenes de Container-Optimized OS, la fuente de herramientas de contenedores relacionadas y cómo compilar desde la fuente.
Fuente de la imagen de Container-Optimized OS
Container-Optimized OS de Google es una bifurcación del proyecto de código abierto de Chromium OS. Puedes encontrar la mayoría de los códigos fuente para Container-Optimized OS en los repositorios de COS https://cos.googlesource.com.
Algunos de los recursos útiles que pueden ayudarte a determinar el código fuente utilizado para compilar la imagen incluyen lo siguiente:
Dentro de la imagen de SO, el archivo
/opt/google/chrome/resources/about_os_credits.html
contiene información sobre la versión y la licencia de todos los paquetes usados para compilar esa imagen.Fuente del kernel: https://cos.googlesource.com/third_party/kernel/+/cos-5.15.
Configuración del kernel (x86): https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/x86/configs/lakitu_defconfig.
Configuración del kernel (Arm): https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/arm64/configs/lakitu_defconfig.
La confirmación SHA1 de la fuente del kernel que se utiliza para compilar una versión particular también se proporciona en las notas de la versión para esa versión.Los artefactos de imágenes adicionales, que incluyen las fuentes de kernel archivadas y los encabezados de kernel, también están disponibles en un bucket público de Google Cloud Storage en
gs://cos-tools/<build-number>/
. Por ejemplo, los artefactos decos-dev-105-17228-0-0
están engs://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/
- Los artefactos de imágenes para imágenes basadas en Arm están disponibles en el bucket público de Cloud Storage en
gs://cos-tools/<build-number>/lakitu-arm64/
. Por ejemplo, los artefactos decos-arm64-dev-105-17228-0-0
están engs://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
A aquellos que están familiarizados con el sistema de compilación de Chromium OS también pueden encontrar útiles las recetas de compilación en https://cos.googlesource.com/cos/overlays/board-overlays/+/master/project-lakitu/.
Los archivos de código fuente reales para paquetes individuales también pueden encontrarse en uno de los duplicados de paquetes que mantiene el sistema de compilación de Chromium OS. Para acceder a estos, agrega el nombre correcto de tarball a una de las siguientes URL:
https://storage.googleapis.com/chromeos-mirror/gentoo/distfiles/
https://storage.googleapis.com/chromeos-localmirror/distfiles/
Por ejemplo, para descargar la versión 1.19.2 de Kubernetes, usa
https://storage.googleapis.com/chromeos-localmirror/distfiles/kubernetes-server-linux-amd64-1.19.2.tar.gz
.
Las Preguntas frecuentes sobre la compilación de Chromium OS y otra documentación sobre la Compilación de Chromium OS explican cómo funcionan el sistema de compilación y las duplicaciones de paquetes.
Fuente del contenedor
Container-Optimized OS de Google se envía con algunas herramientas que descargan contenedores durante el tiempo de ejecución. Esos contenedores también son de código abierto. En la siguiente tabla, se enumeran los contenedores, su ubicación de origen y su ubicación de lanzamiento.
Contenedores | Ubicación de lanzamiento |
---|---|
Caja de herramientas | Container Registry gcr.io/cos-cloud/toolbox |
Cos-gpu-installer | Container Registry gcr.io/cos-cloud/cos-gpu-installer |
Agente de Cloud Logging | Container Registry gcr.io/stackdriver-agents/stackdriver-logging-agent |
Agente de Konlet | Container Registry gcr.io/gce-containers/konlet |
Cómo compilar desde la fuente
Sigue las instrucciones en Cómo compilar a partir del código abierto para compilar una imagen de disco de Container-Optimized OS desde la fuente.
Contribuciones de código fuente
Container-Optimized OS no acepta contribuciones directas del público.