From dac0a309522743de9ffab400f6bb974a3cd972d8 Mon Sep 17 00:00:00 2001 From: Pengfei Ni Date: Mon, 17 Sep 2018 12:57:34 +0800 Subject: [PATCH] Move zh contents to top level. The change is because legacy gitbook is not stable and new gitbook.com is recommended. But the new gitbook doesn't support multi-lang yet. So only zh is supported now on gitbook publiched site. en contents would be added later after it is offically supported. --- zh/CHANGELOG.md => CHANGELOG.md | 0 CONTRIBUTING.md | 13 +++--- zh/SUMMARY.md => SUMMARY.md | 0 {zh/addons => addons}/addon-manager.md | 0 {zh/addons => addons}/cluster-autoscaler.md | 0 {zh/addons => addons}/dashboard.md | 0 .../images/14842107270881.png | Bin .../images/14842114123604.jpg | Bin .../images/14842118198998.png | Bin .../images/14842125295113.jpg | Bin .../images/15084813044270.png | Bin .../images/15084813160226.png | Bin {zh/addons => addons}/images/dashboard-ui.png | Bin {zh/addons => addons}/images/grafana.png | Bin {zh/addons => addons}/images/kibana.png | Bin {zh/addons => addons}/images/kubernator.png | Bin .../images/monitoring_architecture.png | Bin {zh/addons => addons}/images/prometheus.png | Bin {zh/addons => addons}/images/scope-pod.png | Bin {zh/addons => addons}/images/weave-scope.png | Bin {zh/addons => addons}/index.md | 0 {zh/addons => addons}/logging.md | 0 {zh/addons => addons}/metrics.md | 0 {zh/addons => addons}/monitor.md | 0 {zh/addons => addons}/prometheus.txt | 0 .../CNCF_TrailMap_latest.png | Bin .../CloudNativeLandscape.png | Bin ...CloudNativeLandscape_Serverless_latest.png | Bin {zh/appendix => appendix}/ecosystem.md | 0 {zh/appendix => appendix}/index.md | 0 {zh/appendix => appendix}/play-with-k8s.md | 0 {zh/appendix => appendix}/reference.md | 0 {zh/appendix => appendix}/tutorial.md | 0 {zh/apps => apps}/argo.md | 0 {zh/apps => apps}/cicd.md | 0 {zh/apps => apps}/deis.md | 0 {zh/apps => apps}/devops.md | 0 {zh/apps => apps}/draft.md | 0 {zh/apps => apps}/flux.md | 0 {zh/apps => apps}/helm.md | 0 {zh/apps => apps}/images/bookinfo.png | Bin {zh/apps => apps}/images/bookinfo2.png | Bin {zh/apps => apps}/images/etcd.png | Bin {zh/apps => apps}/images/grafana.png | Bin .../images/image-20180423202459184.png | Bin {zh/apps => apps}/images/istio-adapters.png | Bin {zh/apps => apps}/images/istio-arch.png | Bin {zh/apps => apps}/images/istio-auth.png | Bin {zh/apps => apps}/images/istio-mixer.png | Bin {zh/apps => apps}/images/istio-phase.png | Bin {zh/apps => apps}/images/istio-pilot.png | Bin .../images/istio-request-flow.png | Bin .../images/istio-service-discovery.png | Bin .../images/istio-service-versions.png | Bin {zh/apps => apps}/images/istio-service.png | Bin {zh/apps => apps}/images/istio-tls.png | Bin .../images/istio-traffic-manage.png | Bin {zh/apps => apps}/images/istio-traffic.png | Bin {zh/apps => apps}/images/istio.png | Bin {zh/apps => apps}/images/jenkinsx.png | Bin {zh/apps => apps}/images/linkerd-features.png | Bin {zh/apps => apps}/images/linkerd-routing.png | Bin {zh/apps => apps}/images/linkerd.png | Bin {zh/apps => apps}/images/linkerd2.png | Bin {zh/apps => apps}/images/nginx_sidecar.png | Bin .../images/pattern-service-mesh.png | Bin {zh/apps => apps}/images/pilot-arch.png | Bin {zh/apps => apps}/images/productpage.png | Bin {zh/apps => apps}/images/prometheus.png | Bin {zh/apps => apps}/images/servicegraph.png | Bin {zh/apps => apps}/images/skaffold1.png | Bin {zh/apps => apps}/images/skaffold2.png | Bin {zh/apps => apps}/images/zipkin.png | Bin {zh/apps => apps}/index.md | 0 {zh/apps => apps}/istio-community.md | 0 {zh/apps => apps}/istio-deploy.md | 0 {zh/apps => apps}/istio-metrics.md | 0 {zh/apps => apps}/istio-policy.md | 0 {zh/apps => apps}/istio-security.md | 0 {zh/apps => apps}/istio-traffic-management.md | 0 {zh/apps => apps}/istio-troubleshoot.md | 0 {zh/apps => apps}/istio.md | 0 {zh/apps => apps}/jenkinsx.md | 0 {zh/apps => apps}/kompose.md | 0 {zh/apps => apps}/linkerd.md | 0 {zh/apps => apps}/linkerd2.md | 0 {zh/apps => apps}/operator.md | 0 {zh/apps => apps}/patterns.md | 0 {zh/apps => apps}/service-mesh.md | 0 {zh/apps => apps}/service-rolling-update.md | 0 {zh/apps => apps}/skaffold.md | 0 {zh/apps => apps}/spinnaker.md | 0 .../architecture.md | 0 {zh/architecture => architecture}/concepts.md | 0 .../images/14735737093456.jpg | Bin .../images/14791969222306.png | Bin .../images/14791969311297.png | Bin .../images/14937095836427.jpg | Bin .../images/architecture.png | Bin .../images/borg.png | Bin .../images/components.png | Bin .../images/core-apis.png | Bin .../images/core-ecosystem.png | Bin .../images/core-packages.png | Bin .../images/job.png | Bin .../images/node.png | Bin .../images/pod.png | Bin {zh/architecture => architecture}/index.md | 0 book.json | 16 +++---- {zh/components => components}/apiserver.md | 0 .../controller-manager.md | 0 {zh/components => components}/etcd.md | 0 {zh/components => components}/federation.md | 0 {zh/components => components}/hyperkube.md | 0 .../images/14735740742630.jpg | Bin .../images/access_control.png | Bin .../images/components.png | Bin {zh/components => components}/images/cri.png | Bin .../images/dns-demo.png | Bin .../images/etcd-log.png | Bin .../images/etcd-v2.png | Bin .../images/etcd-v3.png | Bin .../images/federation-api-4x.png | Bin .../images/federation-service.png | Bin .../images/iptables-mode.png | Bin .../images/ipvs-mode.png | Bin .../images/kube-apiserver.png | Bin .../images/kube-dns-upstream.png | Bin .../images/kube-dns.png | Bin .../images/kube-proxy.png | Bin .../images/kubelet.png | Bin .../images/pod-start.png | Bin {zh/components => components}/images/pod.puml | 0 .../images/ports.png | Bin .../images/post-ccm-arch.png | Bin .../images/workflow.png | Bin {zh/components => components}/index.md | 0 {zh/components => components}/kube-dns.md | 0 {zh/components => components}/kube-proxy.md | 0 {zh/components => components}/kubeadm.md | 0 {zh/components => components}/kubectl.md | 0 {zh/components => components}/kubelet.md | 0 {zh/components => components}/scheduler.md | 0 {zh/concepts => concepts}/autoscaling.md | 0 {zh/concepts => concepts}/cloud-native.md | 0 {zh/concepts => concepts}/configmap.md | 0 {zh/concepts => concepts}/cronjob.md | 0 {zh/concepts => concepts}/cronjob.txt | 0 .../customresourcedefinition.md | 0 {zh/concepts => concepts}/daemonset.md | 0 {zh/concepts => concepts}/deployment.md | 0 .../images/14735737093456.jpg | Bin .../images/14791969222306.png | Bin .../images/14791969311297.png | Bin .../images/14937095836427.jpg | Bin .../images/15022447799137.jpg | Bin .../images/15022448622429.jpg | Bin .../images/15022451724392.gif | Bin .../images/15022452203435.gif | Bin .../images/15022453441751.gif | Bin .../images/15022454444461.gif | Bin .../images/architecture.png | Bin {zh/concepts => concepts}/images/borg.png | Bin {zh/concepts => concepts}/images/job.png | Bin {zh/concepts => concepts}/images/node.png | Bin {zh/concepts => concepts}/images/pod.png | Bin .../images/service-flow.png | Bin {zh/concepts => concepts}/index.md | 0 {zh/concepts => concepts}/ingress.md | 0 {zh/concepts => concepts}/job.md | 0 {zh/concepts => concepts}/job.txt | 0 {zh/concepts => concepts}/local-volume.md | 0 {zh/concepts => concepts}/namespace.md | 0 {zh/concepts => concepts}/network-policy.md | 0 {zh/concepts => concepts}/nginx.txt | 0 {zh/concepts => concepts}/node.md | 0 .../persistent-volume.md | 0 {zh/concepts => concepts}/pod.md | 0 {zh/concepts => concepts}/podpreset.md | 0 {zh/concepts => concepts}/quota.md | 0 {zh/concepts => concepts}/replicaset.md | 0 {zh/concepts => concepts}/secret.md | 0 {zh/concepts => concepts}/security-context.md | 0 {zh/concepts => concepts}/service.md | 0 {zh/concepts => concepts}/serviceaccount.md | 0 {zh/concepts => concepts}/statefulset.md | 0 .../thirdpartyresources.md | 0 {zh/concepts => concepts}/volume.md | 0 {zh/concepts => concepts}/web.txt | 0 {zh/concepts => concepts}/zookeeper.txt | 0 {zh/deploy => deploy}/azure.md | 0 {zh/deploy => deploy}/certificate.md | 0 {zh/deploy => deploy}/cluster.md | 0 {zh/deploy => deploy}/feature-gates.md | 0 {zh/deploy => deploy}/frakti/centos.md | 0 {zh/deploy => deploy}/frakti/index.md | 0 {zh/deploy => deploy}/frakti/ubuntu.md | 0 .../images/docker-desktop.png | Bin .../images/filebeat-log-collector.jpg | Bin .../images/filebeat-test-kibana.jpg | Bin {zh/deploy => deploy}/images/ha.png | Bin {zh/deploy => deploy}/images/kibana.png | Bin .../images/moby+kubernetes.png | Bin .../images/ovn_kubernetes.png | Bin .../images/upstreamrouting.png | Bin .../images/virtual-kubelet.png | Bin {zh/deploy => deploy}/index.md | 0 {zh/deploy => deploy}/k8s-linuxkit.md | 0 {zh/deploy => deploy}/kops.md | 0 {zh/deploy => deploy}/kubeadm.md | 0 {zh/deploy => deploy}/kubectl.md | 0 .../kubernetes-configuration-best-practice.md | 0 .../01-prerequisites.md | 0 .../02-client-tools.md | 0 .../03-compute-resources.md | 0 .../04-certificate-authority.md | 0 .../05-kubernetes-configuration-files.md | 0 .../06-data-encryption-keys.md | 0 .../07-bootstrapping-etcd.md | 0 ...08-bootstrapping-kubernetes-controllers.md | 0 .../09-bootstrapping-kubernetes-workers.md | 0 .../10-configuring-kubectl.md | 0 .../11-pod-network-routes.md | 0 .../kubernetes-the-hard-way/12-dns-addon.md | 0 .../kubernetes-the-hard-way/13-smoke-test.md | 0 .../kubernetes-the-hard-way/14-cleanup.md | 0 .../kubernetes-the-hard-way/LICENSE | 0 .../images/tmux-screenshot.png | Bin .../kubernetes-the-hard-way/index.md | 0 {zh/deploy => deploy}/kubespray.md | 0 {zh/deploy => deploy}/single.md | 0 {zh/deploy => deploy}/windows.md | 0 {zh/devel => devel}/contribute.md | 0 {zh/devel => devel}/images/community.png | Bin {zh/devel => devel}/images/git_workflow.png | Bin {zh/devel => devel}/index.md | 0 {zh/devel => devel}/testing.md | 0 {zh/etc => etc}/etcd/etcd.conf | 0 {zh/etc => etc}/keepalived/keepalived.conf | 0 {zh/etc => etc}/kubernetes/apiserver | 0 {zh/etc => etc}/kubernetes/config | 0 {zh/etc => etc}/kubernetes/controller-manager | 0 {zh/etc => etc}/kubernetes/kubelet | 0 {zh/etc => etc}/kubernetes/proxy | 0 {zh/etc => etc}/kubernetes/scheduler | 0 {zh/etc => etc}/sysconfig/docker | 0 {zh/etc => etc}/sysconfig/flanneld | 0 .../PlantUML/pod-start.puml | 0 .../PlantUML/sequence.puml | 0 {zh/examples => examples}/client/README.md | 0 .../client/informer/informer.go | 0 .../logstash-log-collector.jpg | Bin .../logstash-test-kibana.jpg | Bin {zh/images => images}/pvc-storage-limit.jpg | Bin {zh/introduction => introduction}/101.md | 0 {zh/introduction => introduction}/201.md | 0 .../architecture.png | Bin {zh/introduction => introduction}/cluster.md | 0 {zh/introduction => introduction}/concepts.md | 0 .../federation.png | Bin {zh/introduction => introduction}/index.md | 0 .../media/14731186543149.jpg | Bin .../media/14731192945281.jpg | Bin .../media/14731196066424.png | Bin .../media/14731218435097.jpg | Bin .../media/14731218545399.jpg | Bin .../media/14731219480252.jpg | Bin .../media/14731220608865.jpg | Bin .../media/14731220608865.png | Bin ...infographic_ExcitedAboutKubernetes_Sep.png | Bin .../media/node.png | Bin .../media/pod.png | Bin .../media/scale.png | Bin .../media/update1.png | Bin .../media/update2.png | Bin .../media/update3.png | Bin .../media/update4.png | Bin .../index.md | 0 .../spark.md | 0 .../tensorflow.md | 0 .../calico/calico-components.png | Bin .../calico/calico-flow.png | Bin {zh/network => network}/calico/calico.png | Bin {zh/network => network}/calico/calico2.png | Bin {zh/network => network}/calico/index.md | 0 {zh/network => network}/canal/index.md | 0 {zh/network => network}/cilium/bpf.png | Bin {zh/network => network}/cilium/cilium.png | Bin {zh/network => network}/cilium/index.md | 0 .../cilium/packet-processor.png | Bin ...rt_Container-Network-Interface-Drivers.png | Bin {zh/network => network}/cni/cni-bridge.png | Bin {zh/network => network}/cni/cni-overlay.png | Bin {zh/network => network}/cni/cni-plugins.png | Bin {zh/network => network}/cni/index.md | 0 .../contiv/Contiv_Blog_image.jpg | Bin {zh/network => network}/contiv/contiv.png | Bin {zh/network => network}/contiv/contiv2.png | Bin {zh/network => network}/contiv/contiv3.png | Bin {zh/network => network}/contiv/index.md | 0 .../flannel/flannel-components.png | Bin .../flannel/flannel-flow.png | Bin .../flannel/flannel-network.png | Bin {zh/network => network}/flannel/flannel.png | Bin {zh/network => network}/flannel/index.md | 0 .../images/ovn-kubernetes.png | Bin {zh/network => network}/index.md | 0 {zh/network => network}/ipvs/index.md | 0 {zh/network => network}/ipvs/ipvs.png | Bin {zh/network => network}/kope/index.md | 0 {zh/network => network}/kuryr/index.md | 0 {zh/network => network}/midonet/1.png | Bin {zh/network => network}/midonet/2.png | Bin {zh/network => network}/midonet/index.md | 0 {zh/network => network}/network.md | 0 {zh/network => network}/nuage/index.md | 0 .../opencontrail/Figure01.png | Bin .../opencontrail/image05.png | Bin {zh/network => network}/opencontrail/index.md | 0 {zh/network => network}/ovn-kubernetes.md | 0 {zh/network => network}/ovs-networking.png | Bin {zh/network => network}/romana/cidr.png | Bin {zh/network => network}/romana/index.md | 0 {zh/network => network}/romana/romana.png | Bin {zh/network => network}/romana/routeagg.png | Bin {zh/network => network}/sriov/index.md | 0 {zh/network => network}/sriov/sriov.png | Bin {zh/network => network}/weave/1.png | Bin {zh/network => network}/weave/2.png | Bin {zh/network => network}/weave/3.png | Bin {zh/network => network}/weave/index.md | 0 {zh/network => network}/weave/weave-flow.png | Bin {zh/plugins => plugins}/CRI.md | 0 {zh/plugins => plugins}/admission.md | 0 {zh/plugins => plugins}/aggregation.md | 0 {zh/plugins => plugins}/api.md | 0 {zh/plugins => plugins}/auth.md | 0 {zh/plugins => plugins}/authentication.md | 0 {zh/plugins => plugins}/cloud-provider.md | 0 {zh/plugins => plugins}/cri-tools.md | 0 {zh/plugins => plugins}/csi.md | 0 {zh/plugins => plugins}/device.md | 0 {zh/plugins => plugins}/flex-volume.md | 0 {zh/plugins => plugins}/glusterfs.md | 0 .../images/authentication.png | Bin .../container-storage-interface_diagram1.png | Bin {zh/plugins => plugins}/images/containerd.png | Bin .../images/cri-containerd.png | Bin {zh/plugins => plugins}/images/cri.png | Bin .../images/device-plugin-overview.png | Bin {zh/plugins => plugins}/images/oidc.png | Bin .../images/policy-controller.jpg | Bin {zh/plugins => plugins}/images/rbac1.png | Bin {zh/plugins => plugins}/images/rbac2.png | Bin {zh/plugins => plugins}/index.md | 0 {zh/plugins => plugins}/ingress.md | 0 {zh/plugins => plugins}/keepalived-vip.md | 0 {zh/plugins => plugins}/network-policy.md | 0 {zh/plugins => plugins}/rbac.md | 0 {zh/plugins => plugins}/scheduler.md | 0 {zh/plugins => plugins}/volume.md | 0 {zh/practice => practice}/audit.md | 0 {zh/practice => practice}/big-cluster.md | 0 {zh/practice => practice}/debugging.md | 0 {zh/practice => practice}/gpu.md | 0 {zh/practice => practice}/ha.md | 0 {zh/practice => practice}/hugepage.md | 0 {zh/practice => practice}/images/ha.png | Bin {zh/practice => practice}/index.md | 0 .../ingress_letsencrypt.md | 0 {zh/practice => practice}/minikube-ingress.md | 0 {zh/practice => practice}/portforward.md | 0 {zh/practice => practice}/portmap.md | 0 {zh/practice => practice}/security.md | 0 .../distributed-load-test.md | 0 .../edge-node-configuration.md | 0 .../images/dashbaord-scale.jpg | Bin .../images/locust-dashboard.jpg | Bin .../images/locust-start-swarming.jpg | Bin .../images/node-edge-arch.jpg | Bin .../images/sample-webapp-rc.jpg | Bin .../images/traefik-dashboard-locust.jpg | Bin .../images/traefik-dashboard.jpg | Bin .../images/traefik-guestbook.jpg | Bin .../images/traefik-nginx.jpg | Bin .../network-and-cluster-perfermance-test.md | 0 .../service-discovery-and-load-balancing.md | 0 .../traefik-ingress-installation.md | 0 .../images/virtual-kubelet.png | Bin {zh/serverless => serverless}/index.md | 0 .../azure.md | 0 .../azuredisk.md | 0 .../azurefile.md | 0 .../cloud.md | 0 .../cluster.md | 0 .../images/dashboard-ui.png | Bin .../images/scope-pod.png | Bin .../images/weave-scope.png | Bin .../index.md | 0 .../network.md | 0 .../pod.md | 0 {zh/troubleshooting => troubleshooting}/pv.md | 0 .../tools.md | 0 .../windows.md | 0 zh/CONTRIBUTING.md | 7 --- zh/README.md | 36 --------------- zh/book.json | 41 ------------------ zh/images/logo.png | Bin 17750 -> 0 bytes zh/images/qrcode.jpg | Bin 27077 -> 0 bytes 409 files changed, 13 insertions(+), 100 deletions(-) rename zh/CHANGELOG.md => CHANGELOG.md (100%) rename zh/SUMMARY.md => SUMMARY.md (100%) rename {zh/addons => addons}/addon-manager.md (100%) rename {zh/addons => addons}/cluster-autoscaler.md (100%) rename {zh/addons => addons}/dashboard.md (100%) rename {zh/addons => addons}/images/14842107270881.png (100%) rename {zh/addons => addons}/images/14842114123604.jpg (100%) rename {zh/addons => addons}/images/14842118198998.png (100%) rename {zh/addons => addons}/images/14842125295113.jpg (100%) rename {zh/addons => addons}/images/15084813044270.png (100%) rename {zh/addons => addons}/images/15084813160226.png (100%) rename {zh/addons => addons}/images/dashboard-ui.png (100%) rename {zh/addons => addons}/images/grafana.png (100%) rename {zh/addons => addons}/images/kibana.png (100%) rename {zh/addons => addons}/images/kubernator.png (100%) rename {zh/addons => addons}/images/monitoring_architecture.png (100%) rename {zh/addons => addons}/images/prometheus.png (100%) rename {zh/addons => addons}/images/scope-pod.png (100%) rename {zh/addons => addons}/images/weave-scope.png (100%) rename {zh/addons => addons}/index.md (100%) rename {zh/addons => addons}/logging.md (100%) rename {zh/addons => addons}/metrics.md (100%) rename {zh/addons => addons}/monitor.md (100%) rename {zh/addons => addons}/prometheus.txt (100%) rename {zh/appendix => appendix}/CNCF_TrailMap_latest.png (100%) rename {zh/appendix => appendix}/CloudNativeLandscape.png (100%) rename {zh/appendix => appendix}/CloudNativeLandscape_Serverless_latest.png (100%) rename {zh/appendix => appendix}/ecosystem.md (100%) rename {zh/appendix => appendix}/index.md (100%) rename {zh/appendix => appendix}/play-with-k8s.md (100%) rename {zh/appendix => appendix}/reference.md (100%) rename {zh/appendix => appendix}/tutorial.md (100%) rename {zh/apps => apps}/argo.md (100%) rename {zh/apps => apps}/cicd.md (100%) rename {zh/apps => apps}/deis.md (100%) rename {zh/apps => apps}/devops.md (100%) rename {zh/apps => apps}/draft.md (100%) rename {zh/apps => apps}/flux.md (100%) rename {zh/apps => apps}/helm.md (100%) rename {zh/apps => apps}/images/bookinfo.png (100%) rename {zh/apps => apps}/images/bookinfo2.png (100%) rename {zh/apps => apps}/images/etcd.png (100%) rename {zh/apps => apps}/images/grafana.png (100%) rename {zh/apps => apps}/images/image-20180423202459184.png (100%) rename {zh/apps => apps}/images/istio-adapters.png (100%) rename {zh/apps => apps}/images/istio-arch.png (100%) rename {zh/apps => apps}/images/istio-auth.png (100%) rename {zh/apps => apps}/images/istio-mixer.png (100%) rename {zh/apps => apps}/images/istio-phase.png (100%) rename {zh/apps => apps}/images/istio-pilot.png (100%) rename {zh/apps => apps}/images/istio-request-flow.png (100%) rename {zh/apps => apps}/images/istio-service-discovery.png (100%) rename {zh/apps => apps}/images/istio-service-versions.png (100%) rename {zh/apps => apps}/images/istio-service.png (100%) rename {zh/apps => apps}/images/istio-tls.png (100%) rename {zh/apps => apps}/images/istio-traffic-manage.png (100%) rename {zh/apps => apps}/images/istio-traffic.png (100%) rename {zh/apps => apps}/images/istio.png (100%) rename {zh/apps => apps}/images/jenkinsx.png (100%) rename {zh/apps => apps}/images/linkerd-features.png (100%) rename {zh/apps => apps}/images/linkerd-routing.png (100%) rename {zh/apps => apps}/images/linkerd.png (100%) rename {zh/apps => apps}/images/linkerd2.png (100%) rename {zh/apps => apps}/images/nginx_sidecar.png (100%) rename {zh/apps => apps}/images/pattern-service-mesh.png (100%) rename {zh/apps => apps}/images/pilot-arch.png (100%) rename {zh/apps => apps}/images/productpage.png (100%) rename {zh/apps => apps}/images/prometheus.png (100%) rename {zh/apps => apps}/images/servicegraph.png (100%) rename {zh/apps => apps}/images/skaffold1.png (100%) rename {zh/apps => apps}/images/skaffold2.png (100%) rename {zh/apps => apps}/images/zipkin.png (100%) rename {zh/apps => apps}/index.md (100%) rename {zh/apps => apps}/istio-community.md (100%) rename {zh/apps => apps}/istio-deploy.md (100%) rename {zh/apps => apps}/istio-metrics.md (100%) rename {zh/apps => apps}/istio-policy.md (100%) rename {zh/apps => apps}/istio-security.md (100%) rename {zh/apps => apps}/istio-traffic-management.md (100%) rename {zh/apps => apps}/istio-troubleshoot.md (100%) rename {zh/apps => apps}/istio.md (100%) rename {zh/apps => apps}/jenkinsx.md (100%) rename {zh/apps => apps}/kompose.md (100%) rename {zh/apps => apps}/linkerd.md (100%) rename {zh/apps => apps}/linkerd2.md (100%) rename {zh/apps => apps}/operator.md (100%) rename {zh/apps => apps}/patterns.md (100%) rename {zh/apps => apps}/service-mesh.md (100%) rename {zh/apps => apps}/service-rolling-update.md (100%) rename {zh/apps => apps}/skaffold.md (100%) rename {zh/apps => apps}/spinnaker.md (100%) rename {zh/architecture => architecture}/architecture.md (100%) rename {zh/architecture => architecture}/concepts.md (100%) rename {zh/architecture => architecture}/images/14735737093456.jpg (100%) rename {zh/architecture => architecture}/images/14791969222306.png (100%) rename {zh/architecture => architecture}/images/14791969311297.png (100%) rename {zh/architecture => architecture}/images/14937095836427.jpg (100%) rename {zh/architecture => architecture}/images/architecture.png (100%) rename {zh/architecture => architecture}/images/borg.png (100%) rename {zh/architecture => architecture}/images/components.png (100%) rename {zh/architecture => architecture}/images/core-apis.png (100%) rename {zh/architecture => architecture}/images/core-ecosystem.png (100%) rename {zh/architecture => architecture}/images/core-packages.png (100%) rename {zh/architecture => architecture}/images/job.png (100%) rename {zh/architecture => architecture}/images/node.png (100%) rename {zh/architecture => architecture}/images/pod.png (100%) rename {zh/architecture => architecture}/index.md (100%) rename {zh/components => components}/apiserver.md (100%) rename {zh/components => components}/controller-manager.md (100%) rename {zh/components => components}/etcd.md (100%) rename {zh/components => components}/federation.md (100%) rename {zh/components => components}/hyperkube.md (100%) rename {zh/components => components}/images/14735740742630.jpg (100%) rename {zh/components => components}/images/access_control.png (100%) rename {zh/components => components}/images/components.png (100%) rename {zh/components => components}/images/cri.png (100%) rename {zh/components => components}/images/dns-demo.png (100%) rename {zh/components => components}/images/etcd-log.png (100%) rename {zh/components => components}/images/etcd-v2.png (100%) rename {zh/components => components}/images/etcd-v3.png (100%) rename {zh/components => components}/images/federation-api-4x.png (100%) rename {zh/components => components}/images/federation-service.png (100%) rename {zh/components => components}/images/iptables-mode.png (100%) rename {zh/components => components}/images/ipvs-mode.png (100%) rename {zh/components => components}/images/kube-apiserver.png (100%) rename {zh/components => components}/images/kube-dns-upstream.png (100%) rename {zh/components => components}/images/kube-dns.png (100%) rename {zh/components => components}/images/kube-proxy.png (100%) rename {zh/components => components}/images/kubelet.png (100%) rename {zh/components => components}/images/pod-start.png (100%) rename {zh/components => components}/images/pod.puml (100%) rename {zh/components => components}/images/ports.png (100%) rename {zh/components => components}/images/post-ccm-arch.png (100%) rename {zh/components => components}/images/workflow.png (100%) rename {zh/components => components}/index.md (100%) rename {zh/components => components}/kube-dns.md (100%) rename {zh/components => components}/kube-proxy.md (100%) rename {zh/components => components}/kubeadm.md (100%) rename {zh/components => components}/kubectl.md (100%) rename {zh/components => components}/kubelet.md (100%) rename {zh/components => components}/scheduler.md (100%) rename {zh/concepts => concepts}/autoscaling.md (100%) rename {zh/concepts => concepts}/cloud-native.md (100%) rename {zh/concepts => concepts}/configmap.md (100%) rename {zh/concepts => concepts}/cronjob.md (100%) rename {zh/concepts => concepts}/cronjob.txt (100%) rename {zh/concepts => concepts}/customresourcedefinition.md (100%) rename {zh/concepts => concepts}/daemonset.md (100%) rename {zh/concepts => concepts}/deployment.md (100%) rename {zh/concepts => concepts}/images/14735737093456.jpg (100%) rename {zh/concepts => concepts}/images/14791969222306.png (100%) rename {zh/concepts => concepts}/images/14791969311297.png (100%) rename {zh/concepts => concepts}/images/14937095836427.jpg (100%) rename {zh/concepts => concepts}/images/15022447799137.jpg (100%) rename {zh/concepts => concepts}/images/15022448622429.jpg (100%) rename {zh/concepts => concepts}/images/15022451724392.gif (100%) rename {zh/concepts => concepts}/images/15022452203435.gif (100%) rename {zh/concepts => concepts}/images/15022453441751.gif (100%) rename {zh/concepts => concepts}/images/15022454444461.gif (100%) rename {zh/concepts => concepts}/images/architecture.png (100%) rename {zh/concepts => concepts}/images/borg.png (100%) rename {zh/concepts => concepts}/images/job.png (100%) rename {zh/concepts => concepts}/images/node.png (100%) rename {zh/concepts => concepts}/images/pod.png (100%) rename {zh/concepts => concepts}/images/service-flow.png (100%) rename {zh/concepts => concepts}/index.md (100%) rename {zh/concepts => concepts}/ingress.md (100%) rename {zh/concepts => concepts}/job.md (100%) rename {zh/concepts => concepts}/job.txt (100%) rename {zh/concepts => concepts}/local-volume.md (100%) rename {zh/concepts => concepts}/namespace.md (100%) rename {zh/concepts => concepts}/network-policy.md (100%) rename {zh/concepts => concepts}/nginx.txt (100%) rename {zh/concepts => concepts}/node.md (100%) rename {zh/concepts => concepts}/persistent-volume.md (100%) rename {zh/concepts => concepts}/pod.md (100%) rename {zh/concepts => concepts}/podpreset.md (100%) rename {zh/concepts => concepts}/quota.md (100%) rename {zh/concepts => concepts}/replicaset.md (100%) rename {zh/concepts => concepts}/secret.md (100%) rename {zh/concepts => concepts}/security-context.md (100%) rename {zh/concepts => concepts}/service.md (100%) rename {zh/concepts => concepts}/serviceaccount.md (100%) rename {zh/concepts => concepts}/statefulset.md (100%) rename {zh/concepts => concepts}/thirdpartyresources.md (100%) rename {zh/concepts => concepts}/volume.md (100%) rename {zh/concepts => concepts}/web.txt (100%) rename {zh/concepts => concepts}/zookeeper.txt (100%) rename {zh/deploy => deploy}/azure.md (100%) rename {zh/deploy => deploy}/certificate.md (100%) rename {zh/deploy => deploy}/cluster.md (100%) rename {zh/deploy => deploy}/feature-gates.md (100%) rename {zh/deploy => deploy}/frakti/centos.md (100%) rename {zh/deploy => deploy}/frakti/index.md (100%) rename {zh/deploy => deploy}/frakti/ubuntu.md (100%) rename {zh/deploy => deploy}/images/docker-desktop.png (100%) rename {zh/deploy => deploy}/images/filebeat-log-collector.jpg (100%) rename {zh/deploy => deploy}/images/filebeat-test-kibana.jpg (100%) rename {zh/deploy => deploy}/images/ha.png (100%) rename {zh/deploy => deploy}/images/kibana.png (100%) rename {zh/deploy => deploy}/images/moby+kubernetes.png (100%) rename {zh/deploy => deploy}/images/ovn_kubernetes.png (100%) rename {zh/deploy => deploy}/images/upstreamrouting.png (100%) rename {zh/deploy => deploy}/images/virtual-kubelet.png (100%) rename {zh/deploy => deploy}/index.md (100%) rename {zh/deploy => deploy}/k8s-linuxkit.md (100%) rename {zh/deploy => deploy}/kops.md (100%) rename {zh/deploy => deploy}/kubeadm.md (100%) rename {zh/deploy => deploy}/kubectl.md (100%) rename {zh/deploy => deploy}/kubernetes-configuration-best-practice.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/01-prerequisites.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/02-client-tools.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/03-compute-resources.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/04-certificate-authority.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/05-kubernetes-configuration-files.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/06-data-encryption-keys.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/07-bootstrapping-etcd.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/08-bootstrapping-kubernetes-controllers.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/09-bootstrapping-kubernetes-workers.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/10-configuring-kubectl.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/11-pod-network-routes.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/12-dns-addon.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/13-smoke-test.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/14-cleanup.md (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/LICENSE (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/images/tmux-screenshot.png (100%) rename {zh/deploy => deploy}/kubernetes-the-hard-way/index.md (100%) rename {zh/deploy => deploy}/kubespray.md (100%) rename {zh/deploy => deploy}/single.md (100%) rename {zh/deploy => deploy}/windows.md (100%) rename {zh/devel => devel}/contribute.md (100%) rename {zh/devel => devel}/images/community.png (100%) rename {zh/devel => devel}/images/git_workflow.png (100%) rename {zh/devel => devel}/index.md (100%) rename {zh/devel => devel}/testing.md (100%) rename {zh/etc => etc}/etcd/etcd.conf (100%) rename {zh/etc => etc}/keepalived/keepalived.conf (100%) rename {zh/etc => etc}/kubernetes/apiserver (100%) rename {zh/etc => etc}/kubernetes/config (100%) rename {zh/etc => etc}/kubernetes/controller-manager (100%) rename {zh/etc => etc}/kubernetes/kubelet (100%) rename {zh/etc => etc}/kubernetes/proxy (100%) rename {zh/etc => etc}/kubernetes/scheduler (100%) rename {zh/etc => etc}/sysconfig/docker (100%) rename {zh/etc => etc}/sysconfig/flanneld (100%) rename {zh/examples => examples}/PlantUML/pod-start.puml (100%) rename {zh/examples => examples}/PlantUML/sequence.puml (100%) rename {zh/examples => examples}/client/README.md (100%) rename {zh/examples => examples}/client/informer/informer.go (100%) rename {zh/images => images}/logstash-log-collector.jpg (100%) rename {zh/images => images}/logstash-test-kibana.jpg (100%) rename {zh/images => images}/pvc-storage-limit.jpg (100%) rename {zh/introduction => introduction}/101.md (100%) rename {zh/introduction => introduction}/201.md (100%) rename {zh/introduction => introduction}/architecture.png (100%) rename {zh/introduction => introduction}/cluster.md (100%) rename {zh/introduction => introduction}/concepts.md (100%) rename {zh/introduction => introduction}/federation.png (100%) rename {zh/introduction => introduction}/index.md (100%) rename {zh/introduction => introduction}/media/14731186543149.jpg (100%) rename {zh/introduction => introduction}/media/14731192945281.jpg (100%) rename {zh/introduction => introduction}/media/14731196066424.png (100%) rename {zh/introduction => introduction}/media/14731218435097.jpg (100%) rename {zh/introduction => introduction}/media/14731218545399.jpg (100%) rename {zh/introduction => introduction}/media/14731219480252.jpg (100%) rename {zh/introduction => introduction}/media/14731220608865.jpg (100%) rename {zh/introduction => introduction}/media/14731220608865.png (100%) rename {zh/introduction => introduction}/media/infographic_ExcitedAboutKubernetes_Sep.png (100%) rename {zh/introduction => introduction}/media/node.png (100%) rename {zh/introduction => introduction}/media/pod.png (100%) rename {zh/introduction => introduction}/media/scale.png (100%) rename {zh/introduction => introduction}/media/update1.png (100%) rename {zh/introduction => introduction}/media/update2.png (100%) rename {zh/introduction => introduction}/media/update3.png (100%) rename {zh/introduction => introduction}/media/update4.png (100%) rename {zh/machine-learning => machine-learning}/index.md (100%) rename {zh/machine-learning => machine-learning}/spark.md (100%) rename {zh/machine-learning => machine-learning}/tensorflow.md (100%) rename {zh/network => network}/calico/calico-components.png (100%) rename {zh/network => network}/calico/calico-flow.png (100%) rename {zh/network => network}/calico/calico.png (100%) rename {zh/network => network}/calico/calico2.png (100%) rename {zh/network => network}/calico/index.md (100%) rename {zh/network => network}/canal/index.md (100%) rename {zh/network => network}/cilium/bpf.png (100%) rename {zh/network => network}/cilium/cilium.png (100%) rename {zh/network => network}/cilium/index.md (100%) rename {zh/network => network}/cilium/packet-processor.png (100%) rename {zh/network => network}/cni/Chart_Container-Network-Interface-Drivers.png (100%) rename {zh/network => network}/cni/cni-bridge.png (100%) rename {zh/network => network}/cni/cni-overlay.png (100%) rename {zh/network => network}/cni/cni-plugins.png (100%) rename {zh/network => network}/cni/index.md (100%) rename {zh/network => network}/contiv/Contiv_Blog_image.jpg (100%) rename {zh/network => network}/contiv/contiv.png (100%) rename {zh/network => network}/contiv/contiv2.png (100%) rename {zh/network => network}/contiv/contiv3.png (100%) rename {zh/network => network}/contiv/index.md (100%) rename {zh/network => network}/flannel/flannel-components.png (100%) rename {zh/network => network}/flannel/flannel-flow.png (100%) rename {zh/network => network}/flannel/flannel-network.png (100%) rename {zh/network => network}/flannel/flannel.png (100%) rename {zh/network => network}/flannel/index.md (100%) rename {zh/network => network}/images/ovn-kubernetes.png (100%) rename {zh/network => network}/index.md (100%) rename {zh/network => network}/ipvs/index.md (100%) rename {zh/network => network}/ipvs/ipvs.png (100%) rename {zh/network => network}/kope/index.md (100%) rename {zh/network => network}/kuryr/index.md (100%) rename {zh/network => network}/midonet/1.png (100%) rename {zh/network => network}/midonet/2.png (100%) rename {zh/network => network}/midonet/index.md (100%) rename {zh/network => network}/network.md (100%) rename {zh/network => network}/nuage/index.md (100%) rename {zh/network => network}/opencontrail/Figure01.png (100%) rename {zh/network => network}/opencontrail/image05.png (100%) rename {zh/network => network}/opencontrail/index.md (100%) rename {zh/network => network}/ovn-kubernetes.md (100%) rename {zh/network => network}/ovs-networking.png (100%) rename {zh/network => network}/romana/cidr.png (100%) rename {zh/network => network}/romana/index.md (100%) rename {zh/network => network}/romana/romana.png (100%) rename {zh/network => network}/romana/routeagg.png (100%) rename {zh/network => network}/sriov/index.md (100%) rename {zh/network => network}/sriov/sriov.png (100%) rename {zh/network => network}/weave/1.png (100%) rename {zh/network => network}/weave/2.png (100%) rename {zh/network => network}/weave/3.png (100%) rename {zh/network => network}/weave/index.md (100%) rename {zh/network => network}/weave/weave-flow.png (100%) rename {zh/plugins => plugins}/CRI.md (100%) rename {zh/plugins => plugins}/admission.md (100%) rename {zh/plugins => plugins}/aggregation.md (100%) rename {zh/plugins => plugins}/api.md (100%) rename {zh/plugins => plugins}/auth.md (100%) rename {zh/plugins => plugins}/authentication.md (100%) rename {zh/plugins => plugins}/cloud-provider.md (100%) rename {zh/plugins => plugins}/cri-tools.md (100%) rename {zh/plugins => plugins}/csi.md (100%) rename {zh/plugins => plugins}/device.md (100%) rename {zh/plugins => plugins}/flex-volume.md (100%) rename {zh/plugins => plugins}/glusterfs.md (100%) rename {zh/plugins => plugins}/images/authentication.png (100%) rename {zh/plugins => plugins}/images/container-storage-interface_diagram1.png (100%) rename {zh/plugins => plugins}/images/containerd.png (100%) rename {zh/plugins => plugins}/images/cri-containerd.png (100%) rename {zh/plugins => plugins}/images/cri.png (100%) rename {zh/plugins => plugins}/images/device-plugin-overview.png (100%) rename {zh/plugins => plugins}/images/oidc.png (100%) rename {zh/plugins => plugins}/images/policy-controller.jpg (100%) rename {zh/plugins => plugins}/images/rbac1.png (100%) rename {zh/plugins => plugins}/images/rbac2.png (100%) rename {zh/plugins => plugins}/index.md (100%) rename {zh/plugins => plugins}/ingress.md (100%) rename {zh/plugins => plugins}/keepalived-vip.md (100%) rename {zh/plugins => plugins}/network-policy.md (100%) rename {zh/plugins => plugins}/rbac.md (100%) rename {zh/plugins => plugins}/scheduler.md (100%) rename {zh/plugins => plugins}/volume.md (100%) rename {zh/practice => practice}/audit.md (100%) rename {zh/practice => practice}/big-cluster.md (100%) rename {zh/practice => practice}/debugging.md (100%) rename {zh/practice => practice}/gpu.md (100%) rename {zh/practice => practice}/ha.md (100%) rename {zh/practice => practice}/hugepage.md (100%) rename {zh/practice => practice}/images/ha.png (100%) rename {zh/practice => practice}/index.md (100%) rename {zh/practice => practice}/ingress_letsencrypt.md (100%) rename {zh/practice => practice}/minikube-ingress.md (100%) rename {zh/practice => practice}/portforward.md (100%) rename {zh/practice => practice}/portmap.md (100%) rename {zh/practice => practice}/security.md (100%) rename {zh/practice => practice}/service-discovery-lb/distributed-load-test.md (100%) rename {zh/practice => practice}/service-discovery-lb/edge-node-configuration.md (100%) rename {zh/practice => practice}/service-discovery-lb/images/dashbaord-scale.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/locust-dashboard.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/locust-start-swarming.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/node-edge-arch.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/sample-webapp-rc.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/traefik-dashboard-locust.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/traefik-dashboard.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/traefik-guestbook.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/images/traefik-nginx.jpg (100%) rename {zh/practice => practice}/service-discovery-lb/network-and-cluster-perfermance-test.md (100%) rename {zh/practice => practice}/service-discovery-lb/service-discovery-and-load-balancing.md (100%) rename {zh/practice => practice}/service-discovery-lb/traefik-ingress-installation.md (100%) rename {zh/serverless => serverless}/images/virtual-kubelet.png (100%) rename {zh/serverless => serverless}/index.md (100%) rename {zh/troubleshooting => troubleshooting}/azure.md (100%) rename {zh/troubleshooting => troubleshooting}/azuredisk.md (100%) rename {zh/troubleshooting => troubleshooting}/azurefile.md (100%) rename {zh/troubleshooting => troubleshooting}/cloud.md (100%) rename {zh/troubleshooting => troubleshooting}/cluster.md (100%) rename {zh/troubleshooting => troubleshooting}/images/dashboard-ui.png (100%) rename {zh/troubleshooting => troubleshooting}/images/scope-pod.png (100%) rename {zh/troubleshooting => troubleshooting}/images/weave-scope.png (100%) rename {zh/troubleshooting => troubleshooting}/index.md (100%) rename {zh/troubleshooting => troubleshooting}/network.md (100%) rename {zh/troubleshooting => troubleshooting}/pod.md (100%) rename {zh/troubleshooting => troubleshooting}/pv.md (100%) rename {zh/troubleshooting => troubleshooting}/tools.md (100%) rename {zh/troubleshooting => troubleshooting}/windows.md (100%) delete mode 100644 zh/CONTRIBUTING.md delete mode 100644 zh/README.md delete mode 100644 zh/book.json delete mode 100644 zh/images/logo.png delete mode 100644 zh/images/qrcode.jpg diff --git a/zh/CHANGELOG.md b/CHANGELOG.md similarity index 100% rename from zh/CHANGELOG.md rename to CHANGELOG.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 50566649..ef0a05c4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,8 +1,7 @@ -# CONTRIBUTING - -1. [Fork on Github](https://github.com/feiskyer/kubernetes-handbook/fork). -2. Clone the forked repo: `git clone https://github.com//kubernetes-handbook -b en`. -3. Create a new branch, add some changes and commit: `git checkout -b new-branch`. -4. Push the branch to github: `git commit -am "comments"; git push`. -5. File a Pull Request on Github to [master](https://github.com/feiskyer/kubernetes-handbook) branch. +# 如何贡献 +1. 在 Github 上 [Fork](https://github.com/feiskyer/kubernetes-handbook/fork) 项目到自己的仓库。 +2. 将 fork 后的项目拉到本地: `git clone https://github.com//kubernetes-handbook`。 +3. 新建一个分支,并添加或编辑内容:`git checkout -b new-branch`。 +4. 提交并推送到 github:`git commit -am "comments"; git push`。 +5. 在 Github 上提交 Pull Request。 diff --git a/zh/SUMMARY.md b/SUMMARY.md similarity index 100% rename from zh/SUMMARY.md rename to SUMMARY.md diff --git a/zh/addons/addon-manager.md b/addons/addon-manager.md similarity index 100% rename from zh/addons/addon-manager.md rename to addons/addon-manager.md diff --git a/zh/addons/cluster-autoscaler.md b/addons/cluster-autoscaler.md similarity index 100% rename from zh/addons/cluster-autoscaler.md rename to addons/cluster-autoscaler.md diff --git a/zh/addons/dashboard.md b/addons/dashboard.md similarity index 100% rename from zh/addons/dashboard.md rename to addons/dashboard.md diff --git a/zh/addons/images/14842107270881.png b/addons/images/14842107270881.png similarity index 100% rename from zh/addons/images/14842107270881.png rename to addons/images/14842107270881.png diff --git a/zh/addons/images/14842114123604.jpg b/addons/images/14842114123604.jpg similarity index 100% rename from zh/addons/images/14842114123604.jpg rename to addons/images/14842114123604.jpg diff --git a/zh/addons/images/14842118198998.png b/addons/images/14842118198998.png similarity index 100% rename from zh/addons/images/14842118198998.png rename to addons/images/14842118198998.png diff --git a/zh/addons/images/14842125295113.jpg b/addons/images/14842125295113.jpg similarity index 100% rename from zh/addons/images/14842125295113.jpg rename to addons/images/14842125295113.jpg diff --git a/zh/addons/images/15084813044270.png b/addons/images/15084813044270.png similarity index 100% rename from zh/addons/images/15084813044270.png rename to addons/images/15084813044270.png diff --git a/zh/addons/images/15084813160226.png b/addons/images/15084813160226.png similarity index 100% rename from zh/addons/images/15084813160226.png rename to addons/images/15084813160226.png diff --git a/zh/addons/images/dashboard-ui.png b/addons/images/dashboard-ui.png similarity index 100% rename from zh/addons/images/dashboard-ui.png rename to addons/images/dashboard-ui.png diff --git a/zh/addons/images/grafana.png b/addons/images/grafana.png similarity index 100% rename from zh/addons/images/grafana.png rename to addons/images/grafana.png diff --git a/zh/addons/images/kibana.png b/addons/images/kibana.png similarity index 100% rename from zh/addons/images/kibana.png rename to addons/images/kibana.png diff --git a/zh/addons/images/kubernator.png b/addons/images/kubernator.png similarity index 100% rename from zh/addons/images/kubernator.png rename to addons/images/kubernator.png diff --git a/zh/addons/images/monitoring_architecture.png b/addons/images/monitoring_architecture.png similarity index 100% rename from zh/addons/images/monitoring_architecture.png rename to addons/images/monitoring_architecture.png diff --git a/zh/addons/images/prometheus.png b/addons/images/prometheus.png similarity index 100% rename from zh/addons/images/prometheus.png rename to addons/images/prometheus.png diff --git a/zh/addons/images/scope-pod.png b/addons/images/scope-pod.png similarity index 100% rename from zh/addons/images/scope-pod.png rename to addons/images/scope-pod.png diff --git a/zh/addons/images/weave-scope.png b/addons/images/weave-scope.png similarity index 100% rename from zh/addons/images/weave-scope.png rename to addons/images/weave-scope.png diff --git a/zh/addons/index.md b/addons/index.md similarity index 100% rename from zh/addons/index.md rename to addons/index.md diff --git a/zh/addons/logging.md b/addons/logging.md similarity index 100% rename from zh/addons/logging.md rename to addons/logging.md diff --git a/zh/addons/metrics.md b/addons/metrics.md similarity index 100% rename from zh/addons/metrics.md rename to addons/metrics.md diff --git a/zh/addons/monitor.md b/addons/monitor.md similarity index 100% rename from zh/addons/monitor.md rename to addons/monitor.md diff --git a/zh/addons/prometheus.txt b/addons/prometheus.txt similarity index 100% rename from zh/addons/prometheus.txt rename to addons/prometheus.txt diff --git a/zh/appendix/CNCF_TrailMap_latest.png b/appendix/CNCF_TrailMap_latest.png similarity index 100% rename from zh/appendix/CNCF_TrailMap_latest.png rename to appendix/CNCF_TrailMap_latest.png diff --git a/zh/appendix/CloudNativeLandscape.png b/appendix/CloudNativeLandscape.png similarity index 100% rename from zh/appendix/CloudNativeLandscape.png rename to appendix/CloudNativeLandscape.png diff --git a/zh/appendix/CloudNativeLandscape_Serverless_latest.png b/appendix/CloudNativeLandscape_Serverless_latest.png similarity index 100% rename from zh/appendix/CloudNativeLandscape_Serverless_latest.png rename to appendix/CloudNativeLandscape_Serverless_latest.png diff --git a/zh/appendix/ecosystem.md b/appendix/ecosystem.md similarity index 100% rename from zh/appendix/ecosystem.md rename to appendix/ecosystem.md diff --git a/zh/appendix/index.md b/appendix/index.md similarity index 100% rename from zh/appendix/index.md rename to appendix/index.md diff --git a/zh/appendix/play-with-k8s.md b/appendix/play-with-k8s.md similarity index 100% rename from zh/appendix/play-with-k8s.md rename to appendix/play-with-k8s.md diff --git a/zh/appendix/reference.md b/appendix/reference.md similarity index 100% rename from zh/appendix/reference.md rename to appendix/reference.md diff --git a/zh/appendix/tutorial.md b/appendix/tutorial.md similarity index 100% rename from zh/appendix/tutorial.md rename to appendix/tutorial.md diff --git a/zh/apps/argo.md b/apps/argo.md similarity index 100% rename from zh/apps/argo.md rename to apps/argo.md diff --git a/zh/apps/cicd.md b/apps/cicd.md similarity index 100% rename from zh/apps/cicd.md rename to apps/cicd.md diff --git a/zh/apps/deis.md b/apps/deis.md similarity index 100% rename from zh/apps/deis.md rename to apps/deis.md diff --git a/zh/apps/devops.md b/apps/devops.md similarity index 100% rename from zh/apps/devops.md rename to apps/devops.md diff --git a/zh/apps/draft.md b/apps/draft.md similarity index 100% rename from zh/apps/draft.md rename to apps/draft.md diff --git a/zh/apps/flux.md b/apps/flux.md similarity index 100% rename from zh/apps/flux.md rename to apps/flux.md diff --git a/zh/apps/helm.md b/apps/helm.md similarity index 100% rename from zh/apps/helm.md rename to apps/helm.md diff --git a/zh/apps/images/bookinfo.png b/apps/images/bookinfo.png similarity index 100% rename from zh/apps/images/bookinfo.png rename to apps/images/bookinfo.png diff --git a/zh/apps/images/bookinfo2.png b/apps/images/bookinfo2.png similarity index 100% rename from zh/apps/images/bookinfo2.png rename to apps/images/bookinfo2.png diff --git a/zh/apps/images/etcd.png b/apps/images/etcd.png similarity index 100% rename from zh/apps/images/etcd.png rename to apps/images/etcd.png diff --git a/zh/apps/images/grafana.png b/apps/images/grafana.png similarity index 100% rename from zh/apps/images/grafana.png rename to apps/images/grafana.png diff --git a/zh/apps/images/image-20180423202459184.png b/apps/images/image-20180423202459184.png similarity index 100% rename from zh/apps/images/image-20180423202459184.png rename to apps/images/image-20180423202459184.png diff --git a/zh/apps/images/istio-adapters.png b/apps/images/istio-adapters.png similarity index 100% rename from zh/apps/images/istio-adapters.png rename to apps/images/istio-adapters.png diff --git a/zh/apps/images/istio-arch.png b/apps/images/istio-arch.png similarity index 100% rename from zh/apps/images/istio-arch.png rename to apps/images/istio-arch.png diff --git a/zh/apps/images/istio-auth.png b/apps/images/istio-auth.png similarity index 100% rename from zh/apps/images/istio-auth.png rename to apps/images/istio-auth.png diff --git a/zh/apps/images/istio-mixer.png b/apps/images/istio-mixer.png similarity index 100% rename from zh/apps/images/istio-mixer.png rename to apps/images/istio-mixer.png diff --git a/zh/apps/images/istio-phase.png b/apps/images/istio-phase.png similarity index 100% rename from zh/apps/images/istio-phase.png rename to apps/images/istio-phase.png diff --git a/zh/apps/images/istio-pilot.png b/apps/images/istio-pilot.png similarity index 100% rename from zh/apps/images/istio-pilot.png rename to apps/images/istio-pilot.png diff --git a/zh/apps/images/istio-request-flow.png b/apps/images/istio-request-flow.png similarity index 100% rename from zh/apps/images/istio-request-flow.png rename to apps/images/istio-request-flow.png diff --git a/zh/apps/images/istio-service-discovery.png b/apps/images/istio-service-discovery.png similarity index 100% rename from zh/apps/images/istio-service-discovery.png rename to apps/images/istio-service-discovery.png diff --git a/zh/apps/images/istio-service-versions.png b/apps/images/istio-service-versions.png similarity index 100% rename from zh/apps/images/istio-service-versions.png rename to apps/images/istio-service-versions.png diff --git a/zh/apps/images/istio-service.png b/apps/images/istio-service.png similarity index 100% rename from zh/apps/images/istio-service.png rename to apps/images/istio-service.png diff --git a/zh/apps/images/istio-tls.png b/apps/images/istio-tls.png similarity index 100% rename from zh/apps/images/istio-tls.png rename to apps/images/istio-tls.png diff --git a/zh/apps/images/istio-traffic-manage.png b/apps/images/istio-traffic-manage.png similarity index 100% rename from zh/apps/images/istio-traffic-manage.png rename to apps/images/istio-traffic-manage.png diff --git a/zh/apps/images/istio-traffic.png b/apps/images/istio-traffic.png similarity index 100% rename from zh/apps/images/istio-traffic.png rename to apps/images/istio-traffic.png diff --git a/zh/apps/images/istio.png b/apps/images/istio.png similarity index 100% rename from zh/apps/images/istio.png rename to apps/images/istio.png diff --git a/zh/apps/images/jenkinsx.png b/apps/images/jenkinsx.png similarity index 100% rename from zh/apps/images/jenkinsx.png rename to apps/images/jenkinsx.png diff --git a/zh/apps/images/linkerd-features.png b/apps/images/linkerd-features.png similarity index 100% rename from zh/apps/images/linkerd-features.png rename to apps/images/linkerd-features.png diff --git a/zh/apps/images/linkerd-routing.png b/apps/images/linkerd-routing.png similarity index 100% rename from zh/apps/images/linkerd-routing.png rename to apps/images/linkerd-routing.png diff --git a/zh/apps/images/linkerd.png b/apps/images/linkerd.png similarity index 100% rename from zh/apps/images/linkerd.png rename to apps/images/linkerd.png diff --git a/zh/apps/images/linkerd2.png b/apps/images/linkerd2.png similarity index 100% rename from zh/apps/images/linkerd2.png rename to apps/images/linkerd2.png diff --git a/zh/apps/images/nginx_sidecar.png b/apps/images/nginx_sidecar.png similarity index 100% rename from zh/apps/images/nginx_sidecar.png rename to apps/images/nginx_sidecar.png diff --git a/zh/apps/images/pattern-service-mesh.png b/apps/images/pattern-service-mesh.png similarity index 100% rename from zh/apps/images/pattern-service-mesh.png rename to apps/images/pattern-service-mesh.png diff --git a/zh/apps/images/pilot-arch.png b/apps/images/pilot-arch.png similarity index 100% rename from zh/apps/images/pilot-arch.png rename to apps/images/pilot-arch.png diff --git a/zh/apps/images/productpage.png b/apps/images/productpage.png similarity index 100% rename from zh/apps/images/productpage.png rename to apps/images/productpage.png diff --git a/zh/apps/images/prometheus.png b/apps/images/prometheus.png similarity index 100% rename from zh/apps/images/prometheus.png rename to apps/images/prometheus.png diff --git a/zh/apps/images/servicegraph.png b/apps/images/servicegraph.png similarity index 100% rename from zh/apps/images/servicegraph.png rename to apps/images/servicegraph.png diff --git a/zh/apps/images/skaffold1.png b/apps/images/skaffold1.png similarity index 100% rename from zh/apps/images/skaffold1.png rename to apps/images/skaffold1.png diff --git a/zh/apps/images/skaffold2.png b/apps/images/skaffold2.png similarity index 100% rename from zh/apps/images/skaffold2.png rename to apps/images/skaffold2.png diff --git a/zh/apps/images/zipkin.png b/apps/images/zipkin.png similarity index 100% rename from zh/apps/images/zipkin.png rename to apps/images/zipkin.png diff --git a/zh/apps/index.md b/apps/index.md similarity index 100% rename from zh/apps/index.md rename to apps/index.md diff --git a/zh/apps/istio-community.md b/apps/istio-community.md similarity index 100% rename from zh/apps/istio-community.md rename to apps/istio-community.md diff --git a/zh/apps/istio-deploy.md b/apps/istio-deploy.md similarity index 100% rename from zh/apps/istio-deploy.md rename to apps/istio-deploy.md diff --git a/zh/apps/istio-metrics.md b/apps/istio-metrics.md similarity index 100% rename from zh/apps/istio-metrics.md rename to apps/istio-metrics.md diff --git a/zh/apps/istio-policy.md b/apps/istio-policy.md similarity index 100% rename from zh/apps/istio-policy.md rename to apps/istio-policy.md diff --git a/zh/apps/istio-security.md b/apps/istio-security.md similarity index 100% rename from zh/apps/istio-security.md rename to apps/istio-security.md diff --git a/zh/apps/istio-traffic-management.md b/apps/istio-traffic-management.md similarity index 100% rename from zh/apps/istio-traffic-management.md rename to apps/istio-traffic-management.md diff --git a/zh/apps/istio-troubleshoot.md b/apps/istio-troubleshoot.md similarity index 100% rename from zh/apps/istio-troubleshoot.md rename to apps/istio-troubleshoot.md diff --git a/zh/apps/istio.md b/apps/istio.md similarity index 100% rename from zh/apps/istio.md rename to apps/istio.md diff --git a/zh/apps/jenkinsx.md b/apps/jenkinsx.md similarity index 100% rename from zh/apps/jenkinsx.md rename to apps/jenkinsx.md diff --git a/zh/apps/kompose.md b/apps/kompose.md similarity index 100% rename from zh/apps/kompose.md rename to apps/kompose.md diff --git a/zh/apps/linkerd.md b/apps/linkerd.md similarity index 100% rename from zh/apps/linkerd.md rename to apps/linkerd.md diff --git a/zh/apps/linkerd2.md b/apps/linkerd2.md similarity index 100% rename from zh/apps/linkerd2.md rename to apps/linkerd2.md diff --git a/zh/apps/operator.md b/apps/operator.md similarity index 100% rename from zh/apps/operator.md rename to apps/operator.md diff --git a/zh/apps/patterns.md b/apps/patterns.md similarity index 100% rename from zh/apps/patterns.md rename to apps/patterns.md diff --git a/zh/apps/service-mesh.md b/apps/service-mesh.md similarity index 100% rename from zh/apps/service-mesh.md rename to apps/service-mesh.md diff --git a/zh/apps/service-rolling-update.md b/apps/service-rolling-update.md similarity index 100% rename from zh/apps/service-rolling-update.md rename to apps/service-rolling-update.md diff --git a/zh/apps/skaffold.md b/apps/skaffold.md similarity index 100% rename from zh/apps/skaffold.md rename to apps/skaffold.md diff --git a/zh/apps/spinnaker.md b/apps/spinnaker.md similarity index 100% rename from zh/apps/spinnaker.md rename to apps/spinnaker.md diff --git a/zh/architecture/architecture.md b/architecture/architecture.md similarity index 100% rename from zh/architecture/architecture.md rename to architecture/architecture.md diff --git a/zh/architecture/concepts.md b/architecture/concepts.md similarity index 100% rename from zh/architecture/concepts.md rename to architecture/concepts.md diff --git a/zh/architecture/images/14735737093456.jpg b/architecture/images/14735737093456.jpg similarity index 100% rename from zh/architecture/images/14735737093456.jpg rename to architecture/images/14735737093456.jpg diff --git a/zh/architecture/images/14791969222306.png b/architecture/images/14791969222306.png similarity index 100% rename from zh/architecture/images/14791969222306.png rename to architecture/images/14791969222306.png diff --git a/zh/architecture/images/14791969311297.png b/architecture/images/14791969311297.png similarity index 100% rename from zh/architecture/images/14791969311297.png rename to architecture/images/14791969311297.png diff --git a/zh/architecture/images/14937095836427.jpg b/architecture/images/14937095836427.jpg similarity index 100% rename from zh/architecture/images/14937095836427.jpg rename to architecture/images/14937095836427.jpg diff --git a/zh/architecture/images/architecture.png b/architecture/images/architecture.png similarity index 100% rename from zh/architecture/images/architecture.png rename to architecture/images/architecture.png diff --git a/zh/architecture/images/borg.png b/architecture/images/borg.png similarity index 100% rename from zh/architecture/images/borg.png rename to architecture/images/borg.png diff --git a/zh/architecture/images/components.png b/architecture/images/components.png similarity index 100% rename from zh/architecture/images/components.png rename to architecture/images/components.png diff --git a/zh/architecture/images/core-apis.png b/architecture/images/core-apis.png similarity index 100% rename from zh/architecture/images/core-apis.png rename to architecture/images/core-apis.png diff --git a/zh/architecture/images/core-ecosystem.png b/architecture/images/core-ecosystem.png similarity index 100% rename from zh/architecture/images/core-ecosystem.png rename to architecture/images/core-ecosystem.png diff --git a/zh/architecture/images/core-packages.png b/architecture/images/core-packages.png similarity index 100% rename from zh/architecture/images/core-packages.png rename to architecture/images/core-packages.png diff --git a/zh/architecture/images/job.png b/architecture/images/job.png similarity index 100% rename from zh/architecture/images/job.png rename to architecture/images/job.png diff --git a/zh/architecture/images/node.png b/architecture/images/node.png similarity index 100% rename from zh/architecture/images/node.png rename to architecture/images/node.png diff --git a/zh/architecture/images/pod.png b/architecture/images/pod.png similarity index 100% rename from zh/architecture/images/pod.png rename to architecture/images/pod.png diff --git a/zh/architecture/index.md b/architecture/index.md similarity index 100% rename from zh/architecture/index.md rename to architecture/index.md diff --git a/book.json b/book.json index 78f5f4e7..d80cec7a 100644 --- a/book.json +++ b/book.json @@ -7,7 +7,7 @@ "mermaid", "github", "editlink", - "anchor-navigation-ex-toc", + "page-toc", "-lunr", "-search", "search-plus", @@ -19,20 +19,18 @@ "fontSize": 11 }, "pluginsConfig": { + "page-toc": { + "selector": ".markdown-section h1, .markdown-section h2, .markdown-section h3", + "position": "before-first", + "showByDefault": true + }, "github": { "url": "https://github.com/feiskyer/kubernetes-handbook" }, "editlink": { - "base": "https://github.com/feiskyer/kubernetes-handbook/blob/master/", + "base": "https://github.com/feiskyer/kubernetes-handbook/blob/master", "label": "编辑本页" }, - "anchor-navigation-ex-toc": { - "showLevel": false, - "mode": "float", - "float": { - "showLevelIcon": false - } - }, "tbfed-pagefooter": { "copyright":"© Pengfei Ni", "modify_label": "Updated at", diff --git a/zh/components/apiserver.md b/components/apiserver.md similarity index 100% rename from zh/components/apiserver.md rename to components/apiserver.md diff --git a/zh/components/controller-manager.md b/components/controller-manager.md similarity index 100% rename from zh/components/controller-manager.md rename to components/controller-manager.md diff --git a/zh/components/etcd.md b/components/etcd.md similarity index 100% rename from zh/components/etcd.md rename to components/etcd.md diff --git a/zh/components/federation.md b/components/federation.md similarity index 100% rename from zh/components/federation.md rename to components/federation.md diff --git a/zh/components/hyperkube.md b/components/hyperkube.md similarity index 100% rename from zh/components/hyperkube.md rename to components/hyperkube.md diff --git a/zh/components/images/14735740742630.jpg b/components/images/14735740742630.jpg similarity index 100% rename from zh/components/images/14735740742630.jpg rename to components/images/14735740742630.jpg diff --git a/zh/components/images/access_control.png b/components/images/access_control.png similarity index 100% rename from zh/components/images/access_control.png rename to components/images/access_control.png diff --git a/zh/components/images/components.png b/components/images/components.png similarity index 100% rename from zh/components/images/components.png rename to components/images/components.png diff --git a/zh/components/images/cri.png b/components/images/cri.png similarity index 100% rename from zh/components/images/cri.png rename to components/images/cri.png diff --git a/zh/components/images/dns-demo.png b/components/images/dns-demo.png similarity index 100% rename from zh/components/images/dns-demo.png rename to components/images/dns-demo.png diff --git a/zh/components/images/etcd-log.png b/components/images/etcd-log.png similarity index 100% rename from zh/components/images/etcd-log.png rename to components/images/etcd-log.png diff --git a/zh/components/images/etcd-v2.png b/components/images/etcd-v2.png similarity index 100% rename from zh/components/images/etcd-v2.png rename to components/images/etcd-v2.png diff --git a/zh/components/images/etcd-v3.png b/components/images/etcd-v3.png similarity index 100% rename from zh/components/images/etcd-v3.png rename to components/images/etcd-v3.png diff --git a/zh/components/images/federation-api-4x.png b/components/images/federation-api-4x.png similarity index 100% rename from zh/components/images/federation-api-4x.png rename to components/images/federation-api-4x.png diff --git a/zh/components/images/federation-service.png b/components/images/federation-service.png similarity index 100% rename from zh/components/images/federation-service.png rename to components/images/federation-service.png diff --git a/zh/components/images/iptables-mode.png b/components/images/iptables-mode.png similarity index 100% rename from zh/components/images/iptables-mode.png rename to components/images/iptables-mode.png diff --git a/zh/components/images/ipvs-mode.png b/components/images/ipvs-mode.png similarity index 100% rename from zh/components/images/ipvs-mode.png rename to components/images/ipvs-mode.png diff --git a/zh/components/images/kube-apiserver.png b/components/images/kube-apiserver.png similarity index 100% rename from zh/components/images/kube-apiserver.png rename to components/images/kube-apiserver.png diff --git a/zh/components/images/kube-dns-upstream.png b/components/images/kube-dns-upstream.png similarity index 100% rename from zh/components/images/kube-dns-upstream.png rename to components/images/kube-dns-upstream.png diff --git a/zh/components/images/kube-dns.png b/components/images/kube-dns.png similarity index 100% rename from zh/components/images/kube-dns.png rename to components/images/kube-dns.png diff --git a/zh/components/images/kube-proxy.png b/components/images/kube-proxy.png similarity index 100% rename from zh/components/images/kube-proxy.png rename to components/images/kube-proxy.png diff --git a/zh/components/images/kubelet.png b/components/images/kubelet.png similarity index 100% rename from zh/components/images/kubelet.png rename to components/images/kubelet.png diff --git a/zh/components/images/pod-start.png b/components/images/pod-start.png similarity index 100% rename from zh/components/images/pod-start.png rename to components/images/pod-start.png diff --git a/zh/components/images/pod.puml b/components/images/pod.puml similarity index 100% rename from zh/components/images/pod.puml rename to components/images/pod.puml diff --git a/zh/components/images/ports.png b/components/images/ports.png similarity index 100% rename from zh/components/images/ports.png rename to components/images/ports.png diff --git a/zh/components/images/post-ccm-arch.png b/components/images/post-ccm-arch.png similarity index 100% rename from zh/components/images/post-ccm-arch.png rename to components/images/post-ccm-arch.png diff --git a/zh/components/images/workflow.png b/components/images/workflow.png similarity index 100% rename from zh/components/images/workflow.png rename to components/images/workflow.png diff --git a/zh/components/index.md b/components/index.md similarity index 100% rename from zh/components/index.md rename to components/index.md diff --git a/zh/components/kube-dns.md b/components/kube-dns.md similarity index 100% rename from zh/components/kube-dns.md rename to components/kube-dns.md diff --git a/zh/components/kube-proxy.md b/components/kube-proxy.md similarity index 100% rename from zh/components/kube-proxy.md rename to components/kube-proxy.md diff --git a/zh/components/kubeadm.md b/components/kubeadm.md similarity index 100% rename from zh/components/kubeadm.md rename to components/kubeadm.md diff --git a/zh/components/kubectl.md b/components/kubectl.md similarity index 100% rename from zh/components/kubectl.md rename to components/kubectl.md diff --git a/zh/components/kubelet.md b/components/kubelet.md similarity index 100% rename from zh/components/kubelet.md rename to components/kubelet.md diff --git a/zh/components/scheduler.md b/components/scheduler.md similarity index 100% rename from zh/components/scheduler.md rename to components/scheduler.md diff --git a/zh/concepts/autoscaling.md b/concepts/autoscaling.md similarity index 100% rename from zh/concepts/autoscaling.md rename to concepts/autoscaling.md diff --git a/zh/concepts/cloud-native.md b/concepts/cloud-native.md similarity index 100% rename from zh/concepts/cloud-native.md rename to concepts/cloud-native.md diff --git a/zh/concepts/configmap.md b/concepts/configmap.md similarity index 100% rename from zh/concepts/configmap.md rename to concepts/configmap.md diff --git a/zh/concepts/cronjob.md b/concepts/cronjob.md similarity index 100% rename from zh/concepts/cronjob.md rename to concepts/cronjob.md diff --git a/zh/concepts/cronjob.txt b/concepts/cronjob.txt similarity index 100% rename from zh/concepts/cronjob.txt rename to concepts/cronjob.txt diff --git a/zh/concepts/customresourcedefinition.md b/concepts/customresourcedefinition.md similarity index 100% rename from zh/concepts/customresourcedefinition.md rename to concepts/customresourcedefinition.md diff --git a/zh/concepts/daemonset.md b/concepts/daemonset.md similarity index 100% rename from zh/concepts/daemonset.md rename to concepts/daemonset.md diff --git a/zh/concepts/deployment.md b/concepts/deployment.md similarity index 100% rename from zh/concepts/deployment.md rename to concepts/deployment.md diff --git a/zh/concepts/images/14735737093456.jpg b/concepts/images/14735737093456.jpg similarity index 100% rename from zh/concepts/images/14735737093456.jpg rename to concepts/images/14735737093456.jpg diff --git a/zh/concepts/images/14791969222306.png b/concepts/images/14791969222306.png similarity index 100% rename from zh/concepts/images/14791969222306.png rename to concepts/images/14791969222306.png diff --git a/zh/concepts/images/14791969311297.png b/concepts/images/14791969311297.png similarity index 100% rename from zh/concepts/images/14791969311297.png rename to concepts/images/14791969311297.png diff --git a/zh/concepts/images/14937095836427.jpg b/concepts/images/14937095836427.jpg similarity index 100% rename from zh/concepts/images/14937095836427.jpg rename to concepts/images/14937095836427.jpg diff --git a/zh/concepts/images/15022447799137.jpg b/concepts/images/15022447799137.jpg similarity index 100% rename from zh/concepts/images/15022447799137.jpg rename to concepts/images/15022447799137.jpg diff --git a/zh/concepts/images/15022448622429.jpg b/concepts/images/15022448622429.jpg similarity index 100% rename from zh/concepts/images/15022448622429.jpg rename to concepts/images/15022448622429.jpg diff --git a/zh/concepts/images/15022451724392.gif b/concepts/images/15022451724392.gif similarity index 100% rename from zh/concepts/images/15022451724392.gif rename to concepts/images/15022451724392.gif diff --git a/zh/concepts/images/15022452203435.gif b/concepts/images/15022452203435.gif similarity index 100% rename from zh/concepts/images/15022452203435.gif rename to concepts/images/15022452203435.gif diff --git a/zh/concepts/images/15022453441751.gif b/concepts/images/15022453441751.gif similarity index 100% rename from zh/concepts/images/15022453441751.gif rename to concepts/images/15022453441751.gif diff --git a/zh/concepts/images/15022454444461.gif b/concepts/images/15022454444461.gif similarity index 100% rename from zh/concepts/images/15022454444461.gif rename to concepts/images/15022454444461.gif diff --git a/zh/concepts/images/architecture.png b/concepts/images/architecture.png similarity index 100% rename from zh/concepts/images/architecture.png rename to concepts/images/architecture.png diff --git a/zh/concepts/images/borg.png b/concepts/images/borg.png similarity index 100% rename from zh/concepts/images/borg.png rename to concepts/images/borg.png diff --git a/zh/concepts/images/job.png b/concepts/images/job.png similarity index 100% rename from zh/concepts/images/job.png rename to concepts/images/job.png diff --git a/zh/concepts/images/node.png b/concepts/images/node.png similarity index 100% rename from zh/concepts/images/node.png rename to concepts/images/node.png diff --git a/zh/concepts/images/pod.png b/concepts/images/pod.png similarity index 100% rename from zh/concepts/images/pod.png rename to concepts/images/pod.png diff --git a/zh/concepts/images/service-flow.png b/concepts/images/service-flow.png similarity index 100% rename from zh/concepts/images/service-flow.png rename to concepts/images/service-flow.png diff --git a/zh/concepts/index.md b/concepts/index.md similarity index 100% rename from zh/concepts/index.md rename to concepts/index.md diff --git a/zh/concepts/ingress.md b/concepts/ingress.md similarity index 100% rename from zh/concepts/ingress.md rename to concepts/ingress.md diff --git a/zh/concepts/job.md b/concepts/job.md similarity index 100% rename from zh/concepts/job.md rename to concepts/job.md diff --git a/zh/concepts/job.txt b/concepts/job.txt similarity index 100% rename from zh/concepts/job.txt rename to concepts/job.txt diff --git a/zh/concepts/local-volume.md b/concepts/local-volume.md similarity index 100% rename from zh/concepts/local-volume.md rename to concepts/local-volume.md diff --git a/zh/concepts/namespace.md b/concepts/namespace.md similarity index 100% rename from zh/concepts/namespace.md rename to concepts/namespace.md diff --git a/zh/concepts/network-policy.md b/concepts/network-policy.md similarity index 100% rename from zh/concepts/network-policy.md rename to concepts/network-policy.md diff --git a/zh/concepts/nginx.txt b/concepts/nginx.txt similarity index 100% rename from zh/concepts/nginx.txt rename to concepts/nginx.txt diff --git a/zh/concepts/node.md b/concepts/node.md similarity index 100% rename from zh/concepts/node.md rename to concepts/node.md diff --git a/zh/concepts/persistent-volume.md b/concepts/persistent-volume.md similarity index 100% rename from zh/concepts/persistent-volume.md rename to concepts/persistent-volume.md diff --git a/zh/concepts/pod.md b/concepts/pod.md similarity index 100% rename from zh/concepts/pod.md rename to concepts/pod.md diff --git a/zh/concepts/podpreset.md b/concepts/podpreset.md similarity index 100% rename from zh/concepts/podpreset.md rename to concepts/podpreset.md diff --git a/zh/concepts/quota.md b/concepts/quota.md similarity index 100% rename from zh/concepts/quota.md rename to concepts/quota.md diff --git a/zh/concepts/replicaset.md b/concepts/replicaset.md similarity index 100% rename from zh/concepts/replicaset.md rename to concepts/replicaset.md diff --git a/zh/concepts/secret.md b/concepts/secret.md similarity index 100% rename from zh/concepts/secret.md rename to concepts/secret.md diff --git a/zh/concepts/security-context.md b/concepts/security-context.md similarity index 100% rename from zh/concepts/security-context.md rename to concepts/security-context.md diff --git a/zh/concepts/service.md b/concepts/service.md similarity index 100% rename from zh/concepts/service.md rename to concepts/service.md diff --git a/zh/concepts/serviceaccount.md b/concepts/serviceaccount.md similarity index 100% rename from zh/concepts/serviceaccount.md rename to concepts/serviceaccount.md diff --git a/zh/concepts/statefulset.md b/concepts/statefulset.md similarity index 100% rename from zh/concepts/statefulset.md rename to concepts/statefulset.md diff --git a/zh/concepts/thirdpartyresources.md b/concepts/thirdpartyresources.md similarity index 100% rename from zh/concepts/thirdpartyresources.md rename to concepts/thirdpartyresources.md diff --git a/zh/concepts/volume.md b/concepts/volume.md similarity index 100% rename from zh/concepts/volume.md rename to concepts/volume.md diff --git a/zh/concepts/web.txt b/concepts/web.txt similarity index 100% rename from zh/concepts/web.txt rename to concepts/web.txt diff --git a/zh/concepts/zookeeper.txt b/concepts/zookeeper.txt similarity index 100% rename from zh/concepts/zookeeper.txt rename to concepts/zookeeper.txt diff --git a/zh/deploy/azure.md b/deploy/azure.md similarity index 100% rename from zh/deploy/azure.md rename to deploy/azure.md diff --git a/zh/deploy/certificate.md b/deploy/certificate.md similarity index 100% rename from zh/deploy/certificate.md rename to deploy/certificate.md diff --git a/zh/deploy/cluster.md b/deploy/cluster.md similarity index 100% rename from zh/deploy/cluster.md rename to deploy/cluster.md diff --git a/zh/deploy/feature-gates.md b/deploy/feature-gates.md similarity index 100% rename from zh/deploy/feature-gates.md rename to deploy/feature-gates.md diff --git a/zh/deploy/frakti/centos.md b/deploy/frakti/centos.md similarity index 100% rename from zh/deploy/frakti/centos.md rename to deploy/frakti/centos.md diff --git a/zh/deploy/frakti/index.md b/deploy/frakti/index.md similarity index 100% rename from zh/deploy/frakti/index.md rename to deploy/frakti/index.md diff --git a/zh/deploy/frakti/ubuntu.md b/deploy/frakti/ubuntu.md similarity index 100% rename from zh/deploy/frakti/ubuntu.md rename to deploy/frakti/ubuntu.md diff --git a/zh/deploy/images/docker-desktop.png b/deploy/images/docker-desktop.png similarity index 100% rename from zh/deploy/images/docker-desktop.png rename to deploy/images/docker-desktop.png diff --git a/zh/deploy/images/filebeat-log-collector.jpg b/deploy/images/filebeat-log-collector.jpg similarity index 100% rename from zh/deploy/images/filebeat-log-collector.jpg rename to deploy/images/filebeat-log-collector.jpg diff --git a/zh/deploy/images/filebeat-test-kibana.jpg b/deploy/images/filebeat-test-kibana.jpg similarity index 100% rename from zh/deploy/images/filebeat-test-kibana.jpg rename to deploy/images/filebeat-test-kibana.jpg diff --git a/zh/deploy/images/ha.png b/deploy/images/ha.png similarity index 100% rename from zh/deploy/images/ha.png rename to deploy/images/ha.png diff --git a/zh/deploy/images/kibana.png b/deploy/images/kibana.png similarity index 100% rename from zh/deploy/images/kibana.png rename to deploy/images/kibana.png diff --git a/zh/deploy/images/moby+kubernetes.png b/deploy/images/moby+kubernetes.png similarity index 100% rename from zh/deploy/images/moby+kubernetes.png rename to deploy/images/moby+kubernetes.png diff --git a/zh/deploy/images/ovn_kubernetes.png b/deploy/images/ovn_kubernetes.png similarity index 100% rename from zh/deploy/images/ovn_kubernetes.png rename to deploy/images/ovn_kubernetes.png diff --git a/zh/deploy/images/upstreamrouting.png b/deploy/images/upstreamrouting.png similarity index 100% rename from zh/deploy/images/upstreamrouting.png rename to deploy/images/upstreamrouting.png diff --git a/zh/deploy/images/virtual-kubelet.png b/deploy/images/virtual-kubelet.png similarity index 100% rename from zh/deploy/images/virtual-kubelet.png rename to deploy/images/virtual-kubelet.png diff --git a/zh/deploy/index.md b/deploy/index.md similarity index 100% rename from zh/deploy/index.md rename to deploy/index.md diff --git a/zh/deploy/k8s-linuxkit.md b/deploy/k8s-linuxkit.md similarity index 100% rename from zh/deploy/k8s-linuxkit.md rename to deploy/k8s-linuxkit.md diff --git a/zh/deploy/kops.md b/deploy/kops.md similarity index 100% rename from zh/deploy/kops.md rename to deploy/kops.md diff --git a/zh/deploy/kubeadm.md b/deploy/kubeadm.md similarity index 100% rename from zh/deploy/kubeadm.md rename to deploy/kubeadm.md diff --git a/zh/deploy/kubectl.md b/deploy/kubectl.md similarity index 100% rename from zh/deploy/kubectl.md rename to deploy/kubectl.md diff --git a/zh/deploy/kubernetes-configuration-best-practice.md b/deploy/kubernetes-configuration-best-practice.md similarity index 100% rename from zh/deploy/kubernetes-configuration-best-practice.md rename to deploy/kubernetes-configuration-best-practice.md diff --git a/zh/deploy/kubernetes-the-hard-way/01-prerequisites.md b/deploy/kubernetes-the-hard-way/01-prerequisites.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/01-prerequisites.md rename to deploy/kubernetes-the-hard-way/01-prerequisites.md diff --git a/zh/deploy/kubernetes-the-hard-way/02-client-tools.md b/deploy/kubernetes-the-hard-way/02-client-tools.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/02-client-tools.md rename to deploy/kubernetes-the-hard-way/02-client-tools.md diff --git a/zh/deploy/kubernetes-the-hard-way/03-compute-resources.md b/deploy/kubernetes-the-hard-way/03-compute-resources.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/03-compute-resources.md rename to deploy/kubernetes-the-hard-way/03-compute-resources.md diff --git a/zh/deploy/kubernetes-the-hard-way/04-certificate-authority.md b/deploy/kubernetes-the-hard-way/04-certificate-authority.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/04-certificate-authority.md rename to deploy/kubernetes-the-hard-way/04-certificate-authority.md diff --git a/zh/deploy/kubernetes-the-hard-way/05-kubernetes-configuration-files.md b/deploy/kubernetes-the-hard-way/05-kubernetes-configuration-files.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/05-kubernetes-configuration-files.md rename to deploy/kubernetes-the-hard-way/05-kubernetes-configuration-files.md diff --git a/zh/deploy/kubernetes-the-hard-way/06-data-encryption-keys.md b/deploy/kubernetes-the-hard-way/06-data-encryption-keys.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/06-data-encryption-keys.md rename to deploy/kubernetes-the-hard-way/06-data-encryption-keys.md diff --git a/zh/deploy/kubernetes-the-hard-way/07-bootstrapping-etcd.md b/deploy/kubernetes-the-hard-way/07-bootstrapping-etcd.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/07-bootstrapping-etcd.md rename to deploy/kubernetes-the-hard-way/07-bootstrapping-etcd.md diff --git a/zh/deploy/kubernetes-the-hard-way/08-bootstrapping-kubernetes-controllers.md b/deploy/kubernetes-the-hard-way/08-bootstrapping-kubernetes-controllers.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/08-bootstrapping-kubernetes-controllers.md rename to deploy/kubernetes-the-hard-way/08-bootstrapping-kubernetes-controllers.md diff --git a/zh/deploy/kubernetes-the-hard-way/09-bootstrapping-kubernetes-workers.md b/deploy/kubernetes-the-hard-way/09-bootstrapping-kubernetes-workers.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/09-bootstrapping-kubernetes-workers.md rename to deploy/kubernetes-the-hard-way/09-bootstrapping-kubernetes-workers.md diff --git a/zh/deploy/kubernetes-the-hard-way/10-configuring-kubectl.md b/deploy/kubernetes-the-hard-way/10-configuring-kubectl.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/10-configuring-kubectl.md rename to deploy/kubernetes-the-hard-way/10-configuring-kubectl.md diff --git a/zh/deploy/kubernetes-the-hard-way/11-pod-network-routes.md b/deploy/kubernetes-the-hard-way/11-pod-network-routes.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/11-pod-network-routes.md rename to deploy/kubernetes-the-hard-way/11-pod-network-routes.md diff --git a/zh/deploy/kubernetes-the-hard-way/12-dns-addon.md b/deploy/kubernetes-the-hard-way/12-dns-addon.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/12-dns-addon.md rename to deploy/kubernetes-the-hard-way/12-dns-addon.md diff --git a/zh/deploy/kubernetes-the-hard-way/13-smoke-test.md b/deploy/kubernetes-the-hard-way/13-smoke-test.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/13-smoke-test.md rename to deploy/kubernetes-the-hard-way/13-smoke-test.md diff --git a/zh/deploy/kubernetes-the-hard-way/14-cleanup.md b/deploy/kubernetes-the-hard-way/14-cleanup.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/14-cleanup.md rename to deploy/kubernetes-the-hard-way/14-cleanup.md diff --git a/zh/deploy/kubernetes-the-hard-way/LICENSE b/deploy/kubernetes-the-hard-way/LICENSE similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/LICENSE rename to deploy/kubernetes-the-hard-way/LICENSE diff --git a/zh/deploy/kubernetes-the-hard-way/images/tmux-screenshot.png b/deploy/kubernetes-the-hard-way/images/tmux-screenshot.png similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/images/tmux-screenshot.png rename to deploy/kubernetes-the-hard-way/images/tmux-screenshot.png diff --git a/zh/deploy/kubernetes-the-hard-way/index.md b/deploy/kubernetes-the-hard-way/index.md similarity index 100% rename from zh/deploy/kubernetes-the-hard-way/index.md rename to deploy/kubernetes-the-hard-way/index.md diff --git a/zh/deploy/kubespray.md b/deploy/kubespray.md similarity index 100% rename from zh/deploy/kubespray.md rename to deploy/kubespray.md diff --git a/zh/deploy/single.md b/deploy/single.md similarity index 100% rename from zh/deploy/single.md rename to deploy/single.md diff --git a/zh/deploy/windows.md b/deploy/windows.md similarity index 100% rename from zh/deploy/windows.md rename to deploy/windows.md diff --git a/zh/devel/contribute.md b/devel/contribute.md similarity index 100% rename from zh/devel/contribute.md rename to devel/contribute.md diff --git a/zh/devel/images/community.png b/devel/images/community.png similarity index 100% rename from zh/devel/images/community.png rename to devel/images/community.png diff --git a/zh/devel/images/git_workflow.png b/devel/images/git_workflow.png similarity index 100% rename from zh/devel/images/git_workflow.png rename to devel/images/git_workflow.png diff --git a/zh/devel/index.md b/devel/index.md similarity index 100% rename from zh/devel/index.md rename to devel/index.md diff --git a/zh/devel/testing.md b/devel/testing.md similarity index 100% rename from zh/devel/testing.md rename to devel/testing.md diff --git a/zh/etc/etcd/etcd.conf b/etc/etcd/etcd.conf similarity index 100% rename from zh/etc/etcd/etcd.conf rename to etc/etcd/etcd.conf diff --git a/zh/etc/keepalived/keepalived.conf b/etc/keepalived/keepalived.conf similarity index 100% rename from zh/etc/keepalived/keepalived.conf rename to etc/keepalived/keepalived.conf diff --git a/zh/etc/kubernetes/apiserver b/etc/kubernetes/apiserver similarity index 100% rename from zh/etc/kubernetes/apiserver rename to etc/kubernetes/apiserver diff --git a/zh/etc/kubernetes/config b/etc/kubernetes/config similarity index 100% rename from zh/etc/kubernetes/config rename to etc/kubernetes/config diff --git a/zh/etc/kubernetes/controller-manager b/etc/kubernetes/controller-manager similarity index 100% rename from zh/etc/kubernetes/controller-manager rename to etc/kubernetes/controller-manager diff --git a/zh/etc/kubernetes/kubelet b/etc/kubernetes/kubelet similarity index 100% rename from zh/etc/kubernetes/kubelet rename to etc/kubernetes/kubelet diff --git a/zh/etc/kubernetes/proxy b/etc/kubernetes/proxy similarity index 100% rename from zh/etc/kubernetes/proxy rename to etc/kubernetes/proxy diff --git a/zh/etc/kubernetes/scheduler b/etc/kubernetes/scheduler similarity index 100% rename from zh/etc/kubernetes/scheduler rename to etc/kubernetes/scheduler diff --git a/zh/etc/sysconfig/docker b/etc/sysconfig/docker similarity index 100% rename from zh/etc/sysconfig/docker rename to etc/sysconfig/docker diff --git a/zh/etc/sysconfig/flanneld b/etc/sysconfig/flanneld similarity index 100% rename from zh/etc/sysconfig/flanneld rename to etc/sysconfig/flanneld diff --git a/zh/examples/PlantUML/pod-start.puml b/examples/PlantUML/pod-start.puml similarity index 100% rename from zh/examples/PlantUML/pod-start.puml rename to examples/PlantUML/pod-start.puml diff --git a/zh/examples/PlantUML/sequence.puml b/examples/PlantUML/sequence.puml similarity index 100% rename from zh/examples/PlantUML/sequence.puml rename to examples/PlantUML/sequence.puml diff --git a/zh/examples/client/README.md b/examples/client/README.md similarity index 100% rename from zh/examples/client/README.md rename to examples/client/README.md diff --git a/zh/examples/client/informer/informer.go b/examples/client/informer/informer.go similarity index 100% rename from zh/examples/client/informer/informer.go rename to examples/client/informer/informer.go diff --git a/zh/images/logstash-log-collector.jpg b/images/logstash-log-collector.jpg similarity index 100% rename from zh/images/logstash-log-collector.jpg rename to images/logstash-log-collector.jpg diff --git a/zh/images/logstash-test-kibana.jpg b/images/logstash-test-kibana.jpg similarity index 100% rename from zh/images/logstash-test-kibana.jpg rename to images/logstash-test-kibana.jpg diff --git a/zh/images/pvc-storage-limit.jpg b/images/pvc-storage-limit.jpg similarity index 100% rename from zh/images/pvc-storage-limit.jpg rename to images/pvc-storage-limit.jpg diff --git a/zh/introduction/101.md b/introduction/101.md similarity index 100% rename from zh/introduction/101.md rename to introduction/101.md diff --git a/zh/introduction/201.md b/introduction/201.md similarity index 100% rename from zh/introduction/201.md rename to introduction/201.md diff --git a/zh/introduction/architecture.png b/introduction/architecture.png similarity index 100% rename from zh/introduction/architecture.png rename to introduction/architecture.png diff --git a/zh/introduction/cluster.md b/introduction/cluster.md similarity index 100% rename from zh/introduction/cluster.md rename to introduction/cluster.md diff --git a/zh/introduction/concepts.md b/introduction/concepts.md similarity index 100% rename from zh/introduction/concepts.md rename to introduction/concepts.md diff --git a/zh/introduction/federation.png b/introduction/federation.png similarity index 100% rename from zh/introduction/federation.png rename to introduction/federation.png diff --git a/zh/introduction/index.md b/introduction/index.md similarity index 100% rename from zh/introduction/index.md rename to introduction/index.md diff --git a/zh/introduction/media/14731186543149.jpg b/introduction/media/14731186543149.jpg similarity index 100% rename from zh/introduction/media/14731186543149.jpg rename to introduction/media/14731186543149.jpg diff --git a/zh/introduction/media/14731192945281.jpg b/introduction/media/14731192945281.jpg similarity index 100% rename from zh/introduction/media/14731192945281.jpg rename to introduction/media/14731192945281.jpg diff --git a/zh/introduction/media/14731196066424.png b/introduction/media/14731196066424.png similarity index 100% rename from zh/introduction/media/14731196066424.png rename to introduction/media/14731196066424.png diff --git a/zh/introduction/media/14731218435097.jpg b/introduction/media/14731218435097.jpg similarity index 100% rename from zh/introduction/media/14731218435097.jpg rename to introduction/media/14731218435097.jpg diff --git a/zh/introduction/media/14731218545399.jpg b/introduction/media/14731218545399.jpg similarity index 100% rename from zh/introduction/media/14731218545399.jpg rename to introduction/media/14731218545399.jpg diff --git a/zh/introduction/media/14731219480252.jpg b/introduction/media/14731219480252.jpg similarity index 100% rename from zh/introduction/media/14731219480252.jpg rename to introduction/media/14731219480252.jpg diff --git a/zh/introduction/media/14731220608865.jpg b/introduction/media/14731220608865.jpg similarity index 100% rename from zh/introduction/media/14731220608865.jpg rename to introduction/media/14731220608865.jpg diff --git a/zh/introduction/media/14731220608865.png b/introduction/media/14731220608865.png similarity index 100% rename from zh/introduction/media/14731220608865.png rename to introduction/media/14731220608865.png diff --git a/zh/introduction/media/infographic_ExcitedAboutKubernetes_Sep.png b/introduction/media/infographic_ExcitedAboutKubernetes_Sep.png similarity index 100% rename from zh/introduction/media/infographic_ExcitedAboutKubernetes_Sep.png rename to introduction/media/infographic_ExcitedAboutKubernetes_Sep.png diff --git a/zh/introduction/media/node.png b/introduction/media/node.png similarity index 100% rename from zh/introduction/media/node.png rename to introduction/media/node.png diff --git a/zh/introduction/media/pod.png b/introduction/media/pod.png similarity index 100% rename from zh/introduction/media/pod.png rename to introduction/media/pod.png diff --git a/zh/introduction/media/scale.png b/introduction/media/scale.png similarity index 100% rename from zh/introduction/media/scale.png rename to introduction/media/scale.png diff --git a/zh/introduction/media/update1.png b/introduction/media/update1.png similarity index 100% rename from zh/introduction/media/update1.png rename to introduction/media/update1.png diff --git a/zh/introduction/media/update2.png b/introduction/media/update2.png similarity index 100% rename from zh/introduction/media/update2.png rename to introduction/media/update2.png diff --git a/zh/introduction/media/update3.png b/introduction/media/update3.png similarity index 100% rename from zh/introduction/media/update3.png rename to introduction/media/update3.png diff --git a/zh/introduction/media/update4.png b/introduction/media/update4.png similarity index 100% rename from zh/introduction/media/update4.png rename to introduction/media/update4.png diff --git a/zh/machine-learning/index.md b/machine-learning/index.md similarity index 100% rename from zh/machine-learning/index.md rename to machine-learning/index.md diff --git a/zh/machine-learning/spark.md b/machine-learning/spark.md similarity index 100% rename from zh/machine-learning/spark.md rename to machine-learning/spark.md diff --git a/zh/machine-learning/tensorflow.md b/machine-learning/tensorflow.md similarity index 100% rename from zh/machine-learning/tensorflow.md rename to machine-learning/tensorflow.md diff --git a/zh/network/calico/calico-components.png b/network/calico/calico-components.png similarity index 100% rename from zh/network/calico/calico-components.png rename to network/calico/calico-components.png diff --git a/zh/network/calico/calico-flow.png b/network/calico/calico-flow.png similarity index 100% rename from zh/network/calico/calico-flow.png rename to network/calico/calico-flow.png diff --git a/zh/network/calico/calico.png b/network/calico/calico.png similarity index 100% rename from zh/network/calico/calico.png rename to network/calico/calico.png diff --git a/zh/network/calico/calico2.png b/network/calico/calico2.png similarity index 100% rename from zh/network/calico/calico2.png rename to network/calico/calico2.png diff --git a/zh/network/calico/index.md b/network/calico/index.md similarity index 100% rename from zh/network/calico/index.md rename to network/calico/index.md diff --git a/zh/network/canal/index.md b/network/canal/index.md similarity index 100% rename from zh/network/canal/index.md rename to network/canal/index.md diff --git a/zh/network/cilium/bpf.png b/network/cilium/bpf.png similarity index 100% rename from zh/network/cilium/bpf.png rename to network/cilium/bpf.png diff --git a/zh/network/cilium/cilium.png b/network/cilium/cilium.png similarity index 100% rename from zh/network/cilium/cilium.png rename to network/cilium/cilium.png diff --git a/zh/network/cilium/index.md b/network/cilium/index.md similarity index 100% rename from zh/network/cilium/index.md rename to network/cilium/index.md diff --git a/zh/network/cilium/packet-processor.png b/network/cilium/packet-processor.png similarity index 100% rename from zh/network/cilium/packet-processor.png rename to network/cilium/packet-processor.png diff --git a/zh/network/cni/Chart_Container-Network-Interface-Drivers.png b/network/cni/Chart_Container-Network-Interface-Drivers.png similarity index 100% rename from zh/network/cni/Chart_Container-Network-Interface-Drivers.png rename to network/cni/Chart_Container-Network-Interface-Drivers.png diff --git a/zh/network/cni/cni-bridge.png b/network/cni/cni-bridge.png similarity index 100% rename from zh/network/cni/cni-bridge.png rename to network/cni/cni-bridge.png diff --git a/zh/network/cni/cni-overlay.png b/network/cni/cni-overlay.png similarity index 100% rename from zh/network/cni/cni-overlay.png rename to network/cni/cni-overlay.png diff --git a/zh/network/cni/cni-plugins.png b/network/cni/cni-plugins.png similarity index 100% rename from zh/network/cni/cni-plugins.png rename to network/cni/cni-plugins.png diff --git a/zh/network/cni/index.md b/network/cni/index.md similarity index 100% rename from zh/network/cni/index.md rename to network/cni/index.md diff --git a/zh/network/contiv/Contiv_Blog_image.jpg b/network/contiv/Contiv_Blog_image.jpg similarity index 100% rename from zh/network/contiv/Contiv_Blog_image.jpg rename to network/contiv/Contiv_Blog_image.jpg diff --git a/zh/network/contiv/contiv.png b/network/contiv/contiv.png similarity index 100% rename from zh/network/contiv/contiv.png rename to network/contiv/contiv.png diff --git a/zh/network/contiv/contiv2.png b/network/contiv/contiv2.png similarity index 100% rename from zh/network/contiv/contiv2.png rename to network/contiv/contiv2.png diff --git a/zh/network/contiv/contiv3.png b/network/contiv/contiv3.png similarity index 100% rename from zh/network/contiv/contiv3.png rename to network/contiv/contiv3.png diff --git a/zh/network/contiv/index.md b/network/contiv/index.md similarity index 100% rename from zh/network/contiv/index.md rename to network/contiv/index.md diff --git a/zh/network/flannel/flannel-components.png b/network/flannel/flannel-components.png similarity index 100% rename from zh/network/flannel/flannel-components.png rename to network/flannel/flannel-components.png diff --git a/zh/network/flannel/flannel-flow.png b/network/flannel/flannel-flow.png similarity index 100% rename from zh/network/flannel/flannel-flow.png rename to network/flannel/flannel-flow.png diff --git a/zh/network/flannel/flannel-network.png b/network/flannel/flannel-network.png similarity index 100% rename from zh/network/flannel/flannel-network.png rename to network/flannel/flannel-network.png diff --git a/zh/network/flannel/flannel.png b/network/flannel/flannel.png similarity index 100% rename from zh/network/flannel/flannel.png rename to network/flannel/flannel.png diff --git a/zh/network/flannel/index.md b/network/flannel/index.md similarity index 100% rename from zh/network/flannel/index.md rename to network/flannel/index.md diff --git a/zh/network/images/ovn-kubernetes.png b/network/images/ovn-kubernetes.png similarity index 100% rename from zh/network/images/ovn-kubernetes.png rename to network/images/ovn-kubernetes.png diff --git a/zh/network/index.md b/network/index.md similarity index 100% rename from zh/network/index.md rename to network/index.md diff --git a/zh/network/ipvs/index.md b/network/ipvs/index.md similarity index 100% rename from zh/network/ipvs/index.md rename to network/ipvs/index.md diff --git a/zh/network/ipvs/ipvs.png b/network/ipvs/ipvs.png similarity index 100% rename from zh/network/ipvs/ipvs.png rename to network/ipvs/ipvs.png diff --git a/zh/network/kope/index.md b/network/kope/index.md similarity index 100% rename from zh/network/kope/index.md rename to network/kope/index.md diff --git a/zh/network/kuryr/index.md b/network/kuryr/index.md similarity index 100% rename from zh/network/kuryr/index.md rename to network/kuryr/index.md diff --git a/zh/network/midonet/1.png b/network/midonet/1.png similarity index 100% rename from zh/network/midonet/1.png rename to network/midonet/1.png diff --git a/zh/network/midonet/2.png b/network/midonet/2.png similarity index 100% rename from zh/network/midonet/2.png rename to network/midonet/2.png diff --git a/zh/network/midonet/index.md b/network/midonet/index.md similarity index 100% rename from zh/network/midonet/index.md rename to network/midonet/index.md diff --git a/zh/network/network.md b/network/network.md similarity index 100% rename from zh/network/network.md rename to network/network.md diff --git a/zh/network/nuage/index.md b/network/nuage/index.md similarity index 100% rename from zh/network/nuage/index.md rename to network/nuage/index.md diff --git a/zh/network/opencontrail/Figure01.png b/network/opencontrail/Figure01.png similarity index 100% rename from zh/network/opencontrail/Figure01.png rename to network/opencontrail/Figure01.png diff --git a/zh/network/opencontrail/image05.png b/network/opencontrail/image05.png similarity index 100% rename from zh/network/opencontrail/image05.png rename to network/opencontrail/image05.png diff --git a/zh/network/opencontrail/index.md b/network/opencontrail/index.md similarity index 100% rename from zh/network/opencontrail/index.md rename to network/opencontrail/index.md diff --git a/zh/network/ovn-kubernetes.md b/network/ovn-kubernetes.md similarity index 100% rename from zh/network/ovn-kubernetes.md rename to network/ovn-kubernetes.md diff --git a/zh/network/ovs-networking.png b/network/ovs-networking.png similarity index 100% rename from zh/network/ovs-networking.png rename to network/ovs-networking.png diff --git a/zh/network/romana/cidr.png b/network/romana/cidr.png similarity index 100% rename from zh/network/romana/cidr.png rename to network/romana/cidr.png diff --git a/zh/network/romana/index.md b/network/romana/index.md similarity index 100% rename from zh/network/romana/index.md rename to network/romana/index.md diff --git a/zh/network/romana/romana.png b/network/romana/romana.png similarity index 100% rename from zh/network/romana/romana.png rename to network/romana/romana.png diff --git a/zh/network/romana/routeagg.png b/network/romana/routeagg.png similarity index 100% rename from zh/network/romana/routeagg.png rename to network/romana/routeagg.png diff --git a/zh/network/sriov/index.md b/network/sriov/index.md similarity index 100% rename from zh/network/sriov/index.md rename to network/sriov/index.md diff --git a/zh/network/sriov/sriov.png b/network/sriov/sriov.png similarity index 100% rename from zh/network/sriov/sriov.png rename to network/sriov/sriov.png diff --git a/zh/network/weave/1.png b/network/weave/1.png similarity index 100% rename from zh/network/weave/1.png rename to network/weave/1.png diff --git a/zh/network/weave/2.png b/network/weave/2.png similarity index 100% rename from zh/network/weave/2.png rename to network/weave/2.png diff --git a/zh/network/weave/3.png b/network/weave/3.png similarity index 100% rename from zh/network/weave/3.png rename to network/weave/3.png diff --git a/zh/network/weave/index.md b/network/weave/index.md similarity index 100% rename from zh/network/weave/index.md rename to network/weave/index.md diff --git a/zh/network/weave/weave-flow.png b/network/weave/weave-flow.png similarity index 100% rename from zh/network/weave/weave-flow.png rename to network/weave/weave-flow.png diff --git a/zh/plugins/CRI.md b/plugins/CRI.md similarity index 100% rename from zh/plugins/CRI.md rename to plugins/CRI.md diff --git a/zh/plugins/admission.md b/plugins/admission.md similarity index 100% rename from zh/plugins/admission.md rename to plugins/admission.md diff --git a/zh/plugins/aggregation.md b/plugins/aggregation.md similarity index 100% rename from zh/plugins/aggregation.md rename to plugins/aggregation.md diff --git a/zh/plugins/api.md b/plugins/api.md similarity index 100% rename from zh/plugins/api.md rename to plugins/api.md diff --git a/zh/plugins/auth.md b/plugins/auth.md similarity index 100% rename from zh/plugins/auth.md rename to plugins/auth.md diff --git a/zh/plugins/authentication.md b/plugins/authentication.md similarity index 100% rename from zh/plugins/authentication.md rename to plugins/authentication.md diff --git a/zh/plugins/cloud-provider.md b/plugins/cloud-provider.md similarity index 100% rename from zh/plugins/cloud-provider.md rename to plugins/cloud-provider.md diff --git a/zh/plugins/cri-tools.md b/plugins/cri-tools.md similarity index 100% rename from zh/plugins/cri-tools.md rename to plugins/cri-tools.md diff --git a/zh/plugins/csi.md b/plugins/csi.md similarity index 100% rename from zh/plugins/csi.md rename to plugins/csi.md diff --git a/zh/plugins/device.md b/plugins/device.md similarity index 100% rename from zh/plugins/device.md rename to plugins/device.md diff --git a/zh/plugins/flex-volume.md b/plugins/flex-volume.md similarity index 100% rename from zh/plugins/flex-volume.md rename to plugins/flex-volume.md diff --git a/zh/plugins/glusterfs.md b/plugins/glusterfs.md similarity index 100% rename from zh/plugins/glusterfs.md rename to plugins/glusterfs.md diff --git a/zh/plugins/images/authentication.png b/plugins/images/authentication.png similarity index 100% rename from zh/plugins/images/authentication.png rename to plugins/images/authentication.png diff --git a/zh/plugins/images/container-storage-interface_diagram1.png b/plugins/images/container-storage-interface_diagram1.png similarity index 100% rename from zh/plugins/images/container-storage-interface_diagram1.png rename to plugins/images/container-storage-interface_diagram1.png diff --git a/zh/plugins/images/containerd.png b/plugins/images/containerd.png similarity index 100% rename from zh/plugins/images/containerd.png rename to plugins/images/containerd.png diff --git a/zh/plugins/images/cri-containerd.png b/plugins/images/cri-containerd.png similarity index 100% rename from zh/plugins/images/cri-containerd.png rename to plugins/images/cri-containerd.png diff --git a/zh/plugins/images/cri.png b/plugins/images/cri.png similarity index 100% rename from zh/plugins/images/cri.png rename to plugins/images/cri.png diff --git a/zh/plugins/images/device-plugin-overview.png b/plugins/images/device-plugin-overview.png similarity index 100% rename from zh/plugins/images/device-plugin-overview.png rename to plugins/images/device-plugin-overview.png diff --git a/zh/plugins/images/oidc.png b/plugins/images/oidc.png similarity index 100% rename from zh/plugins/images/oidc.png rename to plugins/images/oidc.png diff --git a/zh/plugins/images/policy-controller.jpg b/plugins/images/policy-controller.jpg similarity index 100% rename from zh/plugins/images/policy-controller.jpg rename to plugins/images/policy-controller.jpg diff --git a/zh/plugins/images/rbac1.png b/plugins/images/rbac1.png similarity index 100% rename from zh/plugins/images/rbac1.png rename to plugins/images/rbac1.png diff --git a/zh/plugins/images/rbac2.png b/plugins/images/rbac2.png similarity index 100% rename from zh/plugins/images/rbac2.png rename to plugins/images/rbac2.png diff --git a/zh/plugins/index.md b/plugins/index.md similarity index 100% rename from zh/plugins/index.md rename to plugins/index.md diff --git a/zh/plugins/ingress.md b/plugins/ingress.md similarity index 100% rename from zh/plugins/ingress.md rename to plugins/ingress.md diff --git a/zh/plugins/keepalived-vip.md b/plugins/keepalived-vip.md similarity index 100% rename from zh/plugins/keepalived-vip.md rename to plugins/keepalived-vip.md diff --git a/zh/plugins/network-policy.md b/plugins/network-policy.md similarity index 100% rename from zh/plugins/network-policy.md rename to plugins/network-policy.md diff --git a/zh/plugins/rbac.md b/plugins/rbac.md similarity index 100% rename from zh/plugins/rbac.md rename to plugins/rbac.md diff --git a/zh/plugins/scheduler.md b/plugins/scheduler.md similarity index 100% rename from zh/plugins/scheduler.md rename to plugins/scheduler.md diff --git a/zh/plugins/volume.md b/plugins/volume.md similarity index 100% rename from zh/plugins/volume.md rename to plugins/volume.md diff --git a/zh/practice/audit.md b/practice/audit.md similarity index 100% rename from zh/practice/audit.md rename to practice/audit.md diff --git a/zh/practice/big-cluster.md b/practice/big-cluster.md similarity index 100% rename from zh/practice/big-cluster.md rename to practice/big-cluster.md diff --git a/zh/practice/debugging.md b/practice/debugging.md similarity index 100% rename from zh/practice/debugging.md rename to practice/debugging.md diff --git a/zh/practice/gpu.md b/practice/gpu.md similarity index 100% rename from zh/practice/gpu.md rename to practice/gpu.md diff --git a/zh/practice/ha.md b/practice/ha.md similarity index 100% rename from zh/practice/ha.md rename to practice/ha.md diff --git a/zh/practice/hugepage.md b/practice/hugepage.md similarity index 100% rename from zh/practice/hugepage.md rename to practice/hugepage.md diff --git a/zh/practice/images/ha.png b/practice/images/ha.png similarity index 100% rename from zh/practice/images/ha.png rename to practice/images/ha.png diff --git a/zh/practice/index.md b/practice/index.md similarity index 100% rename from zh/practice/index.md rename to practice/index.md diff --git a/zh/practice/ingress_letsencrypt.md b/practice/ingress_letsencrypt.md similarity index 100% rename from zh/practice/ingress_letsencrypt.md rename to practice/ingress_letsencrypt.md diff --git a/zh/practice/minikube-ingress.md b/practice/minikube-ingress.md similarity index 100% rename from zh/practice/minikube-ingress.md rename to practice/minikube-ingress.md diff --git a/zh/practice/portforward.md b/practice/portforward.md similarity index 100% rename from zh/practice/portforward.md rename to practice/portforward.md diff --git a/zh/practice/portmap.md b/practice/portmap.md similarity index 100% rename from zh/practice/portmap.md rename to practice/portmap.md diff --git a/zh/practice/security.md b/practice/security.md similarity index 100% rename from zh/practice/security.md rename to practice/security.md diff --git a/zh/practice/service-discovery-lb/distributed-load-test.md b/practice/service-discovery-lb/distributed-load-test.md similarity index 100% rename from zh/practice/service-discovery-lb/distributed-load-test.md rename to practice/service-discovery-lb/distributed-load-test.md diff --git a/zh/practice/service-discovery-lb/edge-node-configuration.md b/practice/service-discovery-lb/edge-node-configuration.md similarity index 100% rename from zh/practice/service-discovery-lb/edge-node-configuration.md rename to practice/service-discovery-lb/edge-node-configuration.md diff --git a/zh/practice/service-discovery-lb/images/dashbaord-scale.jpg b/practice/service-discovery-lb/images/dashbaord-scale.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/dashbaord-scale.jpg rename to practice/service-discovery-lb/images/dashbaord-scale.jpg diff --git a/zh/practice/service-discovery-lb/images/locust-dashboard.jpg b/practice/service-discovery-lb/images/locust-dashboard.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/locust-dashboard.jpg rename to practice/service-discovery-lb/images/locust-dashboard.jpg diff --git a/zh/practice/service-discovery-lb/images/locust-start-swarming.jpg b/practice/service-discovery-lb/images/locust-start-swarming.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/locust-start-swarming.jpg rename to practice/service-discovery-lb/images/locust-start-swarming.jpg diff --git a/zh/practice/service-discovery-lb/images/node-edge-arch.jpg b/practice/service-discovery-lb/images/node-edge-arch.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/node-edge-arch.jpg rename to practice/service-discovery-lb/images/node-edge-arch.jpg diff --git a/zh/practice/service-discovery-lb/images/sample-webapp-rc.jpg b/practice/service-discovery-lb/images/sample-webapp-rc.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/sample-webapp-rc.jpg rename to practice/service-discovery-lb/images/sample-webapp-rc.jpg diff --git a/zh/practice/service-discovery-lb/images/traefik-dashboard-locust.jpg b/practice/service-discovery-lb/images/traefik-dashboard-locust.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/traefik-dashboard-locust.jpg rename to practice/service-discovery-lb/images/traefik-dashboard-locust.jpg diff --git a/zh/practice/service-discovery-lb/images/traefik-dashboard.jpg b/practice/service-discovery-lb/images/traefik-dashboard.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/traefik-dashboard.jpg rename to practice/service-discovery-lb/images/traefik-dashboard.jpg diff --git a/zh/practice/service-discovery-lb/images/traefik-guestbook.jpg b/practice/service-discovery-lb/images/traefik-guestbook.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/traefik-guestbook.jpg rename to practice/service-discovery-lb/images/traefik-guestbook.jpg diff --git a/zh/practice/service-discovery-lb/images/traefik-nginx.jpg b/practice/service-discovery-lb/images/traefik-nginx.jpg similarity index 100% rename from zh/practice/service-discovery-lb/images/traefik-nginx.jpg rename to practice/service-discovery-lb/images/traefik-nginx.jpg diff --git a/zh/practice/service-discovery-lb/network-and-cluster-perfermance-test.md b/practice/service-discovery-lb/network-and-cluster-perfermance-test.md similarity index 100% rename from zh/practice/service-discovery-lb/network-and-cluster-perfermance-test.md rename to practice/service-discovery-lb/network-and-cluster-perfermance-test.md diff --git a/zh/practice/service-discovery-lb/service-discovery-and-load-balancing.md b/practice/service-discovery-lb/service-discovery-and-load-balancing.md similarity index 100% rename from zh/practice/service-discovery-lb/service-discovery-and-load-balancing.md rename to practice/service-discovery-lb/service-discovery-and-load-balancing.md diff --git a/zh/practice/service-discovery-lb/traefik-ingress-installation.md b/practice/service-discovery-lb/traefik-ingress-installation.md similarity index 100% rename from zh/practice/service-discovery-lb/traefik-ingress-installation.md rename to practice/service-discovery-lb/traefik-ingress-installation.md diff --git a/zh/serverless/images/virtual-kubelet.png b/serverless/images/virtual-kubelet.png similarity index 100% rename from zh/serverless/images/virtual-kubelet.png rename to serverless/images/virtual-kubelet.png diff --git a/zh/serverless/index.md b/serverless/index.md similarity index 100% rename from zh/serverless/index.md rename to serverless/index.md diff --git a/zh/troubleshooting/azure.md b/troubleshooting/azure.md similarity index 100% rename from zh/troubleshooting/azure.md rename to troubleshooting/azure.md diff --git a/zh/troubleshooting/azuredisk.md b/troubleshooting/azuredisk.md similarity index 100% rename from zh/troubleshooting/azuredisk.md rename to troubleshooting/azuredisk.md diff --git a/zh/troubleshooting/azurefile.md b/troubleshooting/azurefile.md similarity index 100% rename from zh/troubleshooting/azurefile.md rename to troubleshooting/azurefile.md diff --git a/zh/troubleshooting/cloud.md b/troubleshooting/cloud.md similarity index 100% rename from zh/troubleshooting/cloud.md rename to troubleshooting/cloud.md diff --git a/zh/troubleshooting/cluster.md b/troubleshooting/cluster.md similarity index 100% rename from zh/troubleshooting/cluster.md rename to troubleshooting/cluster.md diff --git a/zh/troubleshooting/images/dashboard-ui.png b/troubleshooting/images/dashboard-ui.png similarity index 100% rename from zh/troubleshooting/images/dashboard-ui.png rename to troubleshooting/images/dashboard-ui.png diff --git a/zh/troubleshooting/images/scope-pod.png b/troubleshooting/images/scope-pod.png similarity index 100% rename from zh/troubleshooting/images/scope-pod.png rename to troubleshooting/images/scope-pod.png diff --git a/zh/troubleshooting/images/weave-scope.png b/troubleshooting/images/weave-scope.png similarity index 100% rename from zh/troubleshooting/images/weave-scope.png rename to troubleshooting/images/weave-scope.png diff --git a/zh/troubleshooting/index.md b/troubleshooting/index.md similarity index 100% rename from zh/troubleshooting/index.md rename to troubleshooting/index.md diff --git a/zh/troubleshooting/network.md b/troubleshooting/network.md similarity index 100% rename from zh/troubleshooting/network.md rename to troubleshooting/network.md diff --git a/zh/troubleshooting/pod.md b/troubleshooting/pod.md similarity index 100% rename from zh/troubleshooting/pod.md rename to troubleshooting/pod.md diff --git a/zh/troubleshooting/pv.md b/troubleshooting/pv.md similarity index 100% rename from zh/troubleshooting/pv.md rename to troubleshooting/pv.md diff --git a/zh/troubleshooting/tools.md b/troubleshooting/tools.md similarity index 100% rename from zh/troubleshooting/tools.md rename to troubleshooting/tools.md diff --git a/zh/troubleshooting/windows.md b/troubleshooting/windows.md similarity index 100% rename from zh/troubleshooting/windows.md rename to troubleshooting/windows.md diff --git a/zh/CONTRIBUTING.md b/zh/CONTRIBUTING.md deleted file mode 100644 index ef0a05c4..00000000 --- a/zh/CONTRIBUTING.md +++ /dev/null @@ -1,7 +0,0 @@ -# 如何贡献 - -1. 在 Github 上 [Fork](https://github.com/feiskyer/kubernetes-handbook/fork) 项目到自己的仓库。 -2. 将 fork 后的项目拉到本地: `git clone https://github.com//kubernetes-handbook`。 -3. 新建一个分支,并添加或编辑内容:`git checkout -b new-branch`。 -4. 提交并推送到 github:`git commit -am "comments"; git push`。 -5. 在 Github 上提交 Pull Request。 diff --git a/zh/README.md b/zh/README.md deleted file mode 100644 index 5ea0f6b4..00000000 --- a/zh/README.md +++ /dev/null @@ -1,36 +0,0 @@ -# Kubernetes 指南 - -Kubernetes 是谷歌开源的容器集群管理系统,是 Google 多年大规模容器管理技术 Borg 的开源版本,也是 CNCF 最重要的项目之一,主要功能包括: - -- 基于容器的应用部署、维护和滚动升级 -- 负载均衡和服务发现 -- 跨机器和跨地区的集群调度 -- 自动伸缩 -- 无状态服务和有状态服务 -- 广泛的 Volume 支持 -- 插件机制保证扩展性 - -Kubernetes 发展非常迅速,已经成为容器编排领域的领导者。Kubernetes 的中文资料也非常丰富,但系统化和紧跟社区更新的则就比较少见了。《Kubernetes 指南》开源电子书旨在整理平时在开发和使用 Kubernetes 时的参考指南和实践总结,形成一个系统化的参考指南以方便查阅。欢迎大家关注和添加完善内容。 - -## 在线阅读 - -- 中文:[GitBook](https://kubernetes.feisky.xyz/zh/) [Github](https://github.com/feiskyer/kubernetes-handbook/blob/master/zh/SUMMARY.md) [InfoQ](http://www.infoq.com/cn/minibooks/Kubernetes-handbook) -- English:[GitBook](https://kubernetes.feisky.xyz/en/) [Github](https://github.com/feiskyer/kubernetes-handbook/blob/master/en/SUMMARY.md) - -## 项目源码 - -项目源码存放于 Github 上,[https://github.com/feiskyer/kubernetes-handbook](https://github.com/feiskyer/kubernetes-handbook)。 - -### 本书版本更新记录 - -如无特殊说明,本指南所有文档仅适用于 Kubernetes v1.6 及以上版本。详细更新记录见 [CHANGELOG](https://github.com/feiskyer/kubernetes-handbook/blob/master/zh/CHANGELOG.md)。 - -## 微信公众号 - -扫码关注微信公众号,回复关键字即可在微信中查看相关章节。 - -

- -## 贡献者 - -欢迎参与贡献和完善内容,贡献方法参考 [CONTRIBUTING](https://github.com/feiskyer/kubernetes-handbook/blob/master/CONTRIBUTING.md)。感谢所有的贡献者,贡献者列表见 [contributors](https://github.com/feiskyer/kubernetes-handbook/graphs/contributors)。 diff --git a/zh/book.json b/zh/book.json deleted file mode 100644 index 258c74c9..00000000 --- a/zh/book.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "title": "Kubernetes Handbook", - "author": "Pengfei Ni", - "gitbook": ">= 3.2.2", - "language": "zh-cn", - "plugins": [ - "mermaid", - "github", - "editlink", - "page-toc", - "-lunr", - "-search", - "search-plus", - "tbfed-pagefooter" - ], - "pdf": { - "toc": true, - "pageNumbers": true, - "fontSize": 11 - }, - "pluginsConfig": { - "page-toc": { - "selector": ".markdown-section h1, .markdown-section h2, .markdown-section h3", - "position": "before-first", - "showByDefault": true - }, - "github": { - "url": "https://github.com/feiskyer/kubernetes-handbook" - }, - "editlink": { - "base": "https://github.com/feiskyer/kubernetes-handbook/blob/master/zh", - "label": "编辑本页" - }, - "tbfed-pagefooter": { - "copyright":"© Pengfei Ni", - "modify_label": "Updated at", - "modify_format": "YYYY-MM-DD HH:mm:ss" - } - }, - "generator": "site" -} diff --git a/zh/images/logo.png b/zh/images/logo.png deleted file mode 100644 index c6d276f7ac7befc698bdd7a91f06471d59fa85b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17750 zcmdqI1#=xSvn^_7W{P2(V`k=UW;>>snVFfH*)d}rGsVo?%*@Qp%rDfC<`xU-6+C|LC* z(aFC8sj-xbJQ$c46&P4R2pHJwKT*Ij7?>+F7}%)+7#ME`7#OZYcAGLk7#IYiNuVKvQ0cRLtJVl$3*!osk(Jh(Jn8%I{=i#;XF9_#gFuB>{kii;Dv<6O+5UJEJ=r zqrHN_9KeAVPmN}8Xx7Oi` z`_(Xk>jt=X@Yb~mITlX%Sic^vAXj(*SRGFY@2NYQ_@)EZfnsXVd}tuo#~pWc;}pYA zzI}*IJ*qm=q2LZPdffgvYiM)m$K}QWN40wt&gc0zoyjY*xZpRjXZn67h&pU>G$}e^ z*)s-~5SH!wrB^NQ_!dPL)6M*!F%kr|Xuth4ehXmxh=`^l?L-X&wjXSsG_HJ&#_H$N zEw=)S;6%xaf2u(R{zYhFU&j)|Yn@v{N*c%aSBk-(!)l;q!xGLaApHz0h?QlxTU|!C zPvDLXxmHh83yn4g*HAN@*1prZ*}ai<6vvV@BxNX=hD0&GW{AJHn?odis#MS%!!bK{rCLU*>>otYD&b>PdX)z0bL%@JHw+k^UoV z`|Al-NQZfqB}^J-jFi>o6=HPBBFSQ^Q;-pxmXDe#&OL7xHv=4dFNGn3E+W3?mIduh z%c{IwLKEuq)TA-)5}7h`N0FxRazh8sizNQ$Vj(g<{_8G@?~T$at1_-pVHQk;UJ_Jn zPy~CyLOiXUKQDHlq&DcIumq0dBDA;lev-tH_udwxw5?ualo3X*!ze#YgtO2z6hMR{ zT-=ci#B(N-k_36voiIE7+H#X)vNLLfzN$nDDr#nzv9Lw=&v!B_;FSc;}N{wN~U>jNU_kU|=mS!Ev%aQ%zh(^+}{kDJ&Ex9N%f5qGQuS$hBP%|RR*JBj!0+oWX# z6L=szr#(q({7T=$KZE14*cHm~ulbPSec%x)w!3&T!#xy#HpnPL4oK`0f1E5hjLBkj zJk}R}mx$0~tYJH^@YA@3C1%p$uTJO-k-h!R$|IzIcUg+iHmMU&n!p*SKnzFTOg5BZ zaKUrVIAYK#$3ob{!fp6B(m3Hw41q91?vZ9%1MW9tq#4Wo3G<*e*g#{3hKi0baSn!9qJU7S z#1v8|6=f7;0b9nnUH(~EF>=>m`o(pq`#z|(L@{K={f+vYqr%W)tN|kRLZSoD5ne^D zii8hT-zB}EE;5TpSCy)XF)(G9h#V

CAvKj%>#b-l~C~kW8jG9#;(Sx{{5A9lr>n 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 V`G5CPke?RLz%2iN^h4+h{y%L91cm?r