Acessar o código-fonte

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:

         gsutil 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 para cos-arm64-dev-105-17228-0-0 estão em gs://cos-tools/17228.0.0/lakitu-arm64/.
        gsutil 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 momento da execução. Esses contêineres também são de código aberto. A tabela a seguir lista os contêineres e os locais de origem e de lançamento.

Contêineres Local do 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 do 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.