Aceda ao código-fonte

Esta página fornece detalhes sobre o código-fonte do SO otimizado para contentores, incluindo como aceder à origem da imagem do SO otimizado para contentores, à origem das ferramentas de contentores relacionadas e como criar a partir da origem.

Origem da imagem do SO otimizado para contentores

O SO otimizado para contentores da Google é uma ramificação do projeto de código aberto Chromium OS. Pode encontrar a maioria do código fonte do Container-Optimized OS nos repositórios do COS https://cos.googlesource.com.

Alguns dos recursos úteis que podem ajudar a determinar o código fonte usado para criar a imagem incluem:

         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 artefactos de imagem para imagens baseadas em ARM estão disponíveis no contentor do Cloud Storage público em gs://cos-tools/<build-number>/lakitu-arm64/. Por exemplo, os artefactos para cos-arm64-dev-105-17228-0-0 estão em 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
  • As pessoas familiarizadas com o sistema de compilação do Chromium OS também podem achar as receitas de compilação em https://cos.googlesource.com/cos/overlays/board-overlays/+/master/project-lakitu/ úteis.

  • Também pode encontrar arquivos de código fonte reais para pacotes individuais num dos espelhos de pacotes mantidos pelo sistema de compilação do Chromium OS. Pode aceder a estes ficheiros anexando o nome do ficheiro tar.gz correto a um dos seguintes URLs:

    • https://storage.googleapis.com/chromeos-mirror/gentoo/distfiles/
    • https://storage.googleapis.com/chromeos-localmirror/distfiles/

      Por exemplo, para transferir a versão 1.19.2 do Kubernetes, use o comando https://storage.googleapis.com/chromeos-localmirror/distfiles/kubernetes-server-linux-amd64-1.19.2.tar.gz.

As Perguntas frequentes sobre a compilação do Chromium OS e outra documentação sobre a compilação do Chromium OS explicam como funcionam o sistema de compilação e as réplicas de pacotes.

Origem do contentor

O SO otimizado para contentores da Google é fornecido com algumas ferramentas que transferem contentores no tempo de execução. Esses contentores também são de código aberto. A tabela seguinte apresenta os contentores, a respetiva localização de origem e a localização de lançamento.

Contentores Localização 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 Konlet Container Registry gcr.io/gce-containers/konlet

Criar a partir da origem

Siga as instruções no artigo Criação a partir de código aberto para criar uma imagem de disco do SO otimizado para contentores a partir da origem.

Contribuições de código-fonte

O SO otimizado para contentores não aceita contribuições diretas do público.