fs.StringVar(&s.ContainerRuntime,"container-runtime",s.ContainerRuntime,"The container runtime to use. Possible values: 'docker', 'rkt'.")
fs.StringVar(&s.RuntimeCgroups,"runtime-cgroups",s.RuntimeCgroups,"Optional absolute name of cgroups to create and run the runtime in.")
// Docker-specific settings.
fs.BoolVar(&s.ExperimentalDockershim,"experimental-dockershim",s.ExperimentalDockershim,"Enable dockershim only mode. In this mode, kubelet will only start dockershim without any other functionalities. This flag only serves test purpose, please do not use it unless you are conscious of what you are doing. [default=false]")
fs.MarkHidden("experimental-dockershim")
fs.StringVar(&s.DockershimRootDirectory,"experimental-dockershim-root-directory",s.DockershimRootDirectory,"Path to the dockershim root directory.")
fs.BoolVar(&s.DockerDisableSharedPID,"docker-disable-shared-pid",s.DockerDisableSharedPID,"Setting this to false causes Kubernetes to create pods using a shared process namespace for containers in a pod when running with Docker 1.13.1 or higher. A future Kubernetes release will make this configurable instead in the API.")
fs.MarkDeprecated("docker-disable-shared-pid","will be removed in a future release. This option will be replaced by PID namespace sharing that is configurable per-pod using the API. See https://features.k8s.io/495")
fs.StringVar(&s.PodSandboxImage,"pod-infra-container-image",s.PodSandboxImage,"The image whose network/ipc namespaces containers in each pod will use.")
fs.StringVar(&s.DockerEndpoint,"docker-endpoint",s.DockerEndpoint,"Use this for the docker endpoint to communicate with")
fs.DurationVar(&s.ImagePullProgressDeadline.Duration,"image-pull-progress-deadline",s.ImagePullProgressDeadline.Duration,"If no pulling progress is made before this deadline, the image pulling will be cancelled.")
// Network plugin settings. Shared by both docker and rkt.
fs.StringVar(&s.NetworkPluginName,"network-plugin",s.NetworkPluginName,"<Warning: Alpha feature> The name of the network plugin to be invoked for various events in kubelet/pod lifecycle")
fs.StringVar(&s.CNIConfDir,"cni-conf-dir",s.CNIConfDir,"<Warning: Alpha feature> The full path of the directory in which to search for CNI config files. Default: /etc/cni/net.d")
fs.StringVar(&s.CNIBinDir,"cni-bin-dir",s.CNIBinDir,"<Warning: Alpha feature> The full path of the directory in which to search for CNI plugin binaries. Default: /opt/cni/bin")
fs.Int32Var(&s.NetworkPluginMTU,"network-plugin-mtu",s.NetworkPluginMTU,"<Warning: Alpha feature> The MTU to be passed to the network plugin, to override the default. Set to 0 to use the default 1460 MTU.")
// Rkt-specific settings.
fs.StringVar(&s.RktPath,"rkt-path",s.RktPath,"Path of rkt binary. Leave empty to use the first rkt in $PATH. Only used if --container-runtime='rkt'.")
fs.MarkDeprecated("rkt-path","will be removed in a future version. Rktnetes has been deprecated in favor of rktlet (https://github.com/kubernetes-incubator/rktlet).")
fs.StringVar(&s.RktAPIEndpoint,"rkt-api-endpoint",s.RktAPIEndpoint,"The endpoint of the rkt API service to communicate with. Only used if --container-runtime='rkt'.")
fs.MarkDeprecated("rkt-api-endpoint","will be removed in a future version. Rktnetes has been deprecated in favor of rktlet (https://github.com/kubernetes-incubator/rktlet).")
fs.StringVar(&s.RktStage1Image,"rkt-stage1-image",s.RktStage1Image,"image to use as stage1. Local paths and http/https URLs are supported. If empty, the 'stage1.aci' in the same directory as '--rkt-path' will be used.")
fs.MarkDeprecated("rkt-stage1-image","will be removed in a future version. Rktnetes has been deprecated in favor of rktlet (https://github.com/kubernetes-incubator/rktlet).")