Essa página mostra detalhes sobre o código-fonte do Container-Optimized OS, incluindo como acessar a origem da imagem do Container-Optimized OS, a origem para ferramentas de contêiner relacionadas e como criar a partir da origem.
Origem da imagem do Container-Optimized OS
O Container-Optimized OS do Google é uma bifurcação do projeto de código aberto Chromium OS. É possível encontrar a maior parte do código-fonte do Container-Optimized OS nos repositórios COS https://cos.googlesource.com.
Alguns dos recursos úteis que podem ajudar você a determinar o código-fonte usado para criar a imagem:
Dentro da imagem do SO, o arquivo
/opt/google/chrome/resources/about_os_credits.html
contém informações de versão e licença de todos os pacotes usados para criar essa imagem.Código-fonte do Kernel: https://cos.googlesource.com/third_party/kernel/+/cos-5.15.
Configuração do kernel (x86): https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/x86/configs/lakitu_defconfig.
Configuração do kernel (ARM): https://cos.googlesource.com/third_party/kernel/+/refs/heads/cos-5.15/arch/arm64/configs/lakitu_defconfig.
O commit SHA1 do código-fonte do kernel usado para criar uma versão específica também é informado nas Notas de lançamento.Outros artefatos de imagem, incluindo fontes de kernel e cabeçalhos de kernel, também estão disponíveis em um bucket público do Google Cloud Storage em
gs://cos-tools/<build-number>/
. Por exemplo, os artefatos decos-dev-105-17228-0-0
estão emgs://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/
- Os artefatos de imagem para imagens baseadas em Arm estão disponíveis no bucket público
do Cloud Storage em
gs://cos-tools/<build-number>/lakitu-arm64/
. Por exemplo, os artefatos decos-arm64-dev-105-17228-0-0
estão abaixo degs://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
Os usuários que já conhecem o sistema de compilação do Chromium OS também podem encontrar roteiros de compilação em https://cos.googlesource.com/cos/overlays/board-overlays/+/master/project-lakitu/ useful.
Os arquivos de código-fonte reais para pacotes individuais também podem ser encontrados em um dos espelhos do pacote mantidos pelo sistema de compilação do Chromium OS. Para acessá-los, anexe o nome do tarball correto a um dos seguintes URLs:
https://storage.googleapis.com/chromeos-mirror/gentoo/distfiles/
https://storage.googleapis.com/chromeos-localmirror/distfiles/
Por exemplo, para fazer o download do Kubernetes versão 1.19.2, use
https://storage.googleapis.com/chromeos-localmirror/distfiles/kubernetes-server-linux-amd64-1.19.2.tar.gz
.
As perguntas frequentes e outras documentações de criação do Chromium OS Build explicam o funcionamento do sistema de criação e os espelhos do pacote.
Origem do contêiner
O Container-Optimized OS do Google vem com algumas ferramentas que fazem o download de contêineres no ambiente de execução. Esses contêineres também têm código aberto. A tabela a seguir lista os contêineres, o local de origem e o local de lançamento.
Contêineres | Local de lançamento |
---|---|
Caixa de ferramentas | Container Registry gcr.io/cos-cloud/toolbox |
Cos-gpu-installer | Container Registry gcr.io/cos-cloud/cos-gpu-installer |
Agente do Cloud Logging | Container Registry gcr.io/stackdriver-agents/stackdriver-logging-agent |
Agente Konlet | Container Registry gcr.io/gce-containers/konlet |
Como criar a partir da fonte
Siga as instruções sobre Como criar a partir de código aberto para criar uma imagem do disco do Container-Optimized OS a partir da fonte.
Contribuições do código-fonte
O Container-Optimized OS não aceita contribuições diretas do público.