github.com/alibaba/sealer@v0.8.6-0.20220430115802-37a2bdaa8173/docs/api/cloudrootfs.md (about)

     1  # cloud rootfs
     2  
     3  cloud rootfs will package all the dependencies refers to the kubernetes cluster requirements
     4  
     5  ```shell script
     6  .
     7  ├── bin
     8  │   ├── conntrack
     9  │   ├── containerd-rootless-setuptool.sh
    10  │   ├── containerd-rootless.sh
    11  │   ├── crictl
    12  │   ├── kubeadm
    13  │   ├── kubectl
    14  │   ├── kubelet
    15  │   ├── nerdctl
    16  │   └── seautil
    17  ├── cri
    18  │   ├── containerd
    19  │   ├── containerd-shim
    20  │   ├── containerd-shim-runc-v2
    21  │   ├── ctr
    22  │   ├── docker
    23  │   ├── dockerd
    24  │   ├── docker-init
    25  │   ├── docker-proxy
    26  │   ├── rootlesskit
    27  │   ├── rootlesskit-docker-proxy
    28  │   ├── runc
    29  │   └── vpnkit
    30  ├── etc
    31  │   ├── 10-kubeadm.conf
    32  │   ├── Clusterfile  # image default Clusterfile
    33  │   ├── daemon.json
    34  │   ├── docker.service
    35  │   ├── kubeadm-config.yaml
    36  │   └── kubelet.service
    37  ├── images
    38  │   └── registry.tar  # registry docker image, will load this image and run a local registry in cluster
    39  ├── Kubefile
    40  ├── Metadata
    41  ├── README.md
    42  ├── registry # will mount this dir to local registry
    43  │   └── docker
    44  │       └── registry
    45  ├── scripts
    46  │   ├── clean.sh
    47  │   ├── docker.sh
    48  │   ├── init-kube.sh
    49  │   ├── init-registry.sh
    50  │   ├── init.sh
    51  │   └── kubelet-pre-start.sh
    52  └── statics # yaml files, sealer will render values in those files
    53      └── audit-policy.yml
    54  ```
    55  
    56  Using cloud rootfs to build a base cloudImage:
    57  
    58  ```shell script
    59  FROM scratch
    60  COPY . .
    61  ```
    62  
    63  ```shell script
    64  sealer build -t kuberntes:v1.18.3 .
    65  ```
    66  
    67  ## Metadata
    68  
    69  ```shell script
    70  {
    71    "version": "v1.18.3",
    72    "arch": "amd64"
    73  }
    74  ```
    75  
    76  ## Hooks
    77  
    78  ```shell script
    79  FROM kubernetes:1.18.3
    80  COPY preHook.sh /scripts/
    81  ```
    82  
    83  preHook.sh will execute after init.sh before kubeadm init master0
    84  
    85  ## Registry
    86  
    87  registry container name must be 'sealer-registry'