机器人
This commit is contained in:
@ -1,15 +1,7 @@
|
||||
<template>
|
||||
<div :style="$isDev ? 'background-color: #grey;' : ''" v-if="!$frontmatter.lessAds && $themeConfig.showAds">
|
||||
<div class="ads">
|
||||
<!-- <Qq></Qq>
|
||||
群号: 808894550
|
||||
<span style="color: red; font-weight: 500;">在线答疑</span>,
|
||||
初学者可选择在线课程,语言更通俗:
|
||||
<span @click="$sendGaEvent('极客时间', '极客时间', '极客时间:' + $page.path)">
|
||||
<a target="_blank" href="https://time.geekbang.org/column/intro/100015201?code=MH1Wu456g0ZsrKtQI7QidivKV2hVvzerAUxDz5pOuQs%3D">深入剖析Kubernetes</a>
|
||||
</span> -->
|
||||
<div>
|
||||
|
||||
<a @click="clickAds" :href="random.url" target="_blank" rel="nofollow" style="text-decoration: none;">
|
||||
<span class="name">
|
||||
{{ random.name }}
|
||||
@ -47,40 +39,7 @@
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
ads: [
|
||||
{
|
||||
name: 'Sealyun',
|
||||
description: 'Kubernetes,',
|
||||
strong: '一键离线安装',
|
||||
action: '去看看',
|
||||
url: 'http://store.lameleg.com?referrer=shaohq',
|
||||
weight: 20
|
||||
},
|
||||
{
|
||||
name: '阳明的博客',
|
||||
description: 'Kubernetes,',
|
||||
strong: '实战课程',
|
||||
action: '去看看',
|
||||
url: 'https://www.qikqiak.com/post/promotion-51/',
|
||||
weight: 50
|
||||
},
|
||||
{
|
||||
name: '极客时间',
|
||||
description: '精要30计,让DevOps快速落地',
|
||||
strong: 'DevOps实战笔记',
|
||||
action: '去看看',
|
||||
url: 'https://time.geekbang.org/column/intro/100036601?code=0Totv3yN%2FohiumTclUF4ky4qRYs9Ecq6ZK4IdgNf88M%3D',
|
||||
weight: 30
|
||||
},
|
||||
// {
|
||||
// name: '宝塔面板',
|
||||
// description: '一键全能 Linux 部署及管理,',
|
||||
// strong: '送你3188元礼包',
|
||||
// action: '点我领取',
|
||||
// url: 'https://www.bt.cn/?invite_code=MV9vdnlveno=',
|
||||
// weight: 50
|
||||
// }
|
||||
]
|
||||
ads: require('./ad-list')
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
@ -138,7 +97,7 @@ export default {
|
||||
.ads span.description-strong {
|
||||
font-size: 0.9em;
|
||||
color: red;
|
||||
font-weight: normal;
|
||||
font-weight: 500;
|
||||
}
|
||||
.ads span.action {
|
||||
font-size: 0.75em;
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<template>
|
||||
<div>
|
||||
<div style="border: solid 1px #E6A23C; background-color: rgb(253, 246, 236); padding: 1rem;">
|
||||
<div v-show="!envOk" key="not">
|
||||
|
||||
<grid :rwd="{compact: 'stack'}">
|
||||
|
||||
88
.vuepress/components/SharingBlock.vue
Normal file
88
.vuepress/components/SharingBlock.vue
Normal file
@ -0,0 +1,88 @@
|
||||
<template>
|
||||
<div style="border: solid 1px #E6A23C; background-color: rgb(253, 246, 236); padding: 1rem;">
|
||||
<div v-show="!authorized" key="not">
|
||||
|
||||
<p style="color: red">请扫描二维码加微信后,获得授权码,显示完整文档。(需分享朋友圈)</p>
|
||||
<p>全站只在此一处需要输入验证码</p>
|
||||
<grid :rwd="{compact: 'stack'}">
|
||||
<grid-item size="1/3" :rwd="{tablet: '1/1', compact: '1/1'}" style="padding: 0rem 0 1rem 1rem;">
|
||||
|
||||
<div>
|
||||
|
||||
<p>
|
||||
<img src="/images/dz2.jpeg" style="width: 180px;"></img>
|
||||
</p>
|
||||
</div>
|
||||
</grid-item>
|
||||
<grid-item size="2/3" :rwd="{tablet: '1/1', compact: '1/1'}" style="padding: 1rem 1rem 1rem 1rem;">
|
||||
<div style="display: inline-block; width: 480px; max-width: calc(100% - 2rem); overflow: hidden; line-height: 40px; background-color: rgba(255,229,100,0.3); padding: 1rem; margin-bottom: 20px; border: 1px solid #d7dae2;">
|
||||
<p>发送给Kuboard: <el-tag size="medium" effect="dark">{{code1}}{{code2}}</el-tag></p>
|
||||
<el-form ref="envForm" style="text-align: left;" label-width="80px">
|
||||
<!-- <el-form-item label="发给Kuboard">
|
||||
{{code}}
|
||||
</el-form-item> -->
|
||||
<el-form-item prop="checked" class="env-form-item" label="验证码:">
|
||||
<el-input placeholder="Kuboard返回的查看码" v-model.number="authCode"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</div>
|
||||
</grid-item>
|
||||
</grid>
|
||||
|
||||
</div>
|
||||
<!-- <el-collapse-transition> -->
|
||||
<div v-show="authorized" key="ok">
|
||||
<!-- <el-button style="margin-top: 10px;" @click="review" type="text">再看看我是否符合安装条件</el-button> -->
|
||||
<el-alert
|
||||
title="已为您显示完整文档,感谢配合。"
|
||||
description="缓存清空后需重新获得验证码"
|
||||
effect="dark"
|
||||
type="success">
|
||||
</el-alert>
|
||||
<slot></slot>
|
||||
</div>
|
||||
<!-- </el-collapse-transition> -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
|
||||
data () {
|
||||
let a = false
|
||||
if (typeof window !== 'undefined') {
|
||||
a = localStorage.getItem('SharingBlockValidated')
|
||||
}
|
||||
let c2 = parseInt(Math.random() * 10)
|
||||
if (c2 === 0) {
|
||||
c2 = 1
|
||||
}
|
||||
return {
|
||||
authorized: a,
|
||||
code1: parseInt(Math.random() * 100),
|
||||
code2: c2,
|
||||
authCode: undefined
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
authCode () {
|
||||
if (this.authCode === this.code1 + this.code2) {
|
||||
this.authorized = true
|
||||
if (typeof window !== 'undefined') {
|
||||
localStorage.setItem('SharingBlockValidated', 'true')
|
||||
}
|
||||
this.$sendGaEvent('文档验证码', '文档验证码' + this.$page.path, '文档验证码' + this.$title)
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
validate () {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
</style>
|
||||
@ -1,20 +1,19 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-dialog
|
||||
title="催更利器"
|
||||
title="感谢阅读"
|
||||
:visible.sync="dialogVisible"
|
||||
width="60%"
|
||||
:before-close="handleClose"
|
||||
:append-to-body ="true">
|
||||
<div style="text-align: center; font-size: 18px; weight: 500;">
|
||||
<div style="background-color: #f8f8f8; padding: 10px 10px 10px 10px; margin-bottom: 10px; border: solid 1px #ddd;">
|
||||
鼓励作者尽快完成 Kubernetes 教程
|
||||
<span style="color: red; font-weight: 500;">剩下的 {{$themeConfig.incompleteRatio}}% </span>,
|
||||
所以我要
|
||||
<div style="background-color: rgb(236, 245, 255); padding: 10px 10px 10px 10px; margin-bottom: 10px; border: solid 1px #007af5;">
|
||||
<a href="https://github.com/eip-work/kuboard-press" target="_blank" @click="linkToStar">
|
||||
给一个 Github Star
|
||||
<OutboundLink/>
|
||||
</a>
|
||||
就可以鼓励作者尽快完成
|
||||
<span style="color: red; font-weight: 500;">剩下的 {{$themeConfig.incompleteRatio}}% </span>
|
||||
</div>
|
||||
<a href="https://github.com/eip-work/kuboard-press" target="_blank" @click="linkToStar">
|
||||
<div style="border: solid 1px #ddd;">
|
||||
@ -107,24 +106,8 @@ export default {
|
||||
localStorage.setItem('stared', 'true')
|
||||
this.$sendGaEvent('StarGazer', 'SG:GotoGithub', 'SG:前往github' + this.$page.path)
|
||||
},
|
||||
gotoStar() {
|
||||
this.dialogVisible = false
|
||||
localStorage.setItem('stared', 'true')
|
||||
window.open('https://github.com/eip-work/kuboard-press')
|
||||
if (window.ga) {
|
||||
window.ga('send', {
|
||||
hitType: 'event',
|
||||
eventCategory: 'StarGazer',
|
||||
eventAction: 'SG:GotoGithub',
|
||||
eventLabel: 'SG:前往github'
|
||||
});
|
||||
console.log('发送成功 ga event')
|
||||
} else {
|
||||
console.log('开发环境,不发送 ga event')
|
||||
}
|
||||
},
|
||||
handleClose (done) {
|
||||
this.$message.success('Kuboard及文档是免费提供的')
|
||||
this.$message.success('Kuboard及Kubernetes教程都是免费提供的,请给一个 github star 以示鼓励')
|
||||
if (window.ga) {
|
||||
window.ga('send', {
|
||||
hitType: 'event',
|
||||
|
||||
34
.vuepress/components/ad-list.js
Normal file
34
.vuepress/components/ad-list.js
Normal file
@ -0,0 +1,34 @@
|
||||
module.exports = [
|
||||
{
|
||||
name: 'Sealyun',
|
||||
description: 'Kubernetes,',
|
||||
strong: '一键离线安装',
|
||||
action: '去看看',
|
||||
url: 'http://store.lameleg.com?referrer=shaohq',
|
||||
weight: 20
|
||||
},
|
||||
{
|
||||
name: '阳明的博客',
|
||||
description: 'Kubernetes,',
|
||||
strong: '实战课程',
|
||||
action: '去看看',
|
||||
url: 'https://www.qikqiak.com/post/promotion-51/',
|
||||
weight: 50
|
||||
},
|
||||
{
|
||||
name: '极客时间',
|
||||
description: '精要30计,让DevOps快速落地。',
|
||||
strong: 'DevOps实战笔记',
|
||||
action: '去看看',
|
||||
url: 'https://time.geekbang.org/column/intro/100036601?code=0Totv3yN%2FohiumTclUF4ky4qRYs9Ecq6ZK4IdgNf88M%3D',
|
||||
weight: 30
|
||||
},
|
||||
// {
|
||||
// name: '宝塔面板',
|
||||
// description: '一键全能 Linux 部署及管理,',
|
||||
// strong: '送你3188元礼包',
|
||||
// action: '点我领取',
|
||||
// url: 'https://www.bt.cn/?invite_code=MV9vdnlveno=',
|
||||
// weight: 50
|
||||
// }
|
||||
]
|
||||
489
.vuepress/config-sidebar.js
Normal file
489
.vuepress/config-sidebar.js
Normal file
@ -0,0 +1,489 @@
|
||||
module.exports = {
|
||||
'/overview/': [
|
||||
{
|
||||
title: '简介',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
'share-coder'
|
||||
]
|
||||
}, {
|
||||
title: '概念',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'quick-win',
|
||||
'why-kuboard',
|
||||
'concepts'
|
||||
]
|
||||
},
|
||||
],
|
||||
|
||||
'/articles/': [
|
||||
{
|
||||
title: '文章',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'201908/kuboard-view-of-k8s'
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
'/install/': [
|
||||
{
|
||||
title: '安装 Kubernetes',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'install-docker-desktop',
|
||||
['install-k8s', '安装Kubernetes单Master节点'],
|
||||
'install-kubernetes',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '升级 Kubernetes',
|
||||
collapsable: false,
|
||||
children: [
|
||||
// ['install-k8s-upgrade', '升级Kubernetes集群'],
|
||||
'upgrade-k8s/1.15.x-1.15.4',
|
||||
['upgrade-k8s/1.15.x-1.16.x', 'K8S从1.15.x(1.16.x)升级到 1.16.x'],
|
||||
'upgrade-k8s/calico-3.8-3.9',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '管理 Kubernetes',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'install-dashboard',
|
||||
'install-dashboard-upgrade',
|
||||
'install-kubectl',
|
||||
'config-kubectl',
|
||||
'install-k8s-dashboard',
|
||||
]
|
||||
},
|
||||
// {
|
||||
// title: '常见问题',
|
||||
// collapsable: false,
|
||||
// children: [
|
||||
// 'faq/timeout'
|
||||
// ]
|
||||
// }
|
||||
],
|
||||
|
||||
'/learning/': [
|
||||
{
|
||||
title: 'Kubernetes 介绍',
|
||||
collapsable: true,
|
||||
sidebarDepth: 3,
|
||||
children: [
|
||||
'',
|
||||
'k8s-bg/what-is-k8s',
|
||||
'k8s-bg/component',
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 入门',
|
||||
collapsable: true,
|
||||
sidebarDepth: 3,
|
||||
children: [
|
||||
'k8s-basics/kubernetes-basics',
|
||||
'k8s-basics/deploy-app',
|
||||
'k8s-basics/explore',
|
||||
'k8s-basics/expose',
|
||||
'k8s-basics/scale',
|
||||
'k8s-basics/update',
|
||||
'k8s-basics/k8s-core-concepts'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 进阶',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '架构',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '节点',
|
||||
collapsable: true,
|
||||
// path: '/learning/k8s-bg/architecture/nodes',
|
||||
children: [
|
||||
'k8s-bg/architecture/nodes',
|
||||
'k8s-bg/architecture/nodes-mgmt',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '集群内的通信',
|
||||
collapsable: true,
|
||||
// path: '/learning/k8s-bg/architecture/com',
|
||||
children: [
|
||||
'k8s-bg/architecture/com',
|
||||
'k8s-bg/architecture/com-n-m',
|
||||
'k8s-bg/architecture/com-m-n',
|
||||
]
|
||||
},
|
||||
'k8s-bg/architecture/controller',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '操作Kubernetes',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/obj/k8s-object',
|
||||
'k8s-intermediate/obj/manage',
|
||||
'k8s-intermediate/obj/names',
|
||||
'k8s-intermediate/obj/namespaces',
|
||||
'k8s-intermediate/obj/namespace-op',
|
||||
'k8s-intermediate/obj/labels',
|
||||
'k8s-intermediate/obj/annotations',
|
||||
'k8s-intermediate/obj/field',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '容器',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/container/images',
|
||||
'k8s-intermediate/container/env',
|
||||
'k8s-intermediate/container/runtime',
|
||||
'k8s-intermediate/container/lifecycle',
|
||||
'k8s-intermediate/container/lifecycle-p',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '工作负载',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/pod',
|
||||
'k8s-intermediate/workload/pod-lifecycle',
|
||||
'k8s-intermediate/workload/init-container',
|
||||
'k8s-intermediate/workload/init-config',
|
||||
'k8s-intermediate/workload/init-debug',
|
||||
'k8s-intermediate/workload/workload',
|
||||
{
|
||||
title: '控制器 - Deployment',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/wl-deployment/',
|
||||
'k8s-intermediate/workload/wl-deployment/create',
|
||||
'k8s-intermediate/workload/wl-deployment/update',
|
||||
'k8s-intermediate/workload/wl-deployment/rollback',
|
||||
'k8s-intermediate/workload/wl-deployment/scale',
|
||||
'k8s-intermediate/workload/wl-deployment/pause',
|
||||
'k8s-intermediate/workload/wl-deployment/status',
|
||||
'k8s-intermediate/workload/wl-deployment/cleanup',
|
||||
'k8s-intermediate/workload/wl-deployment/canary',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '控制器 - StatefulSet',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/wl-statefulset/',
|
||||
'k8s-intermediate/workload/wl-statefulset/basics.html',
|
||||
'k8s-intermediate/workload/wl-statefulset/scaling.html',
|
||||
'k8s-intermediate/workload/wl-statefulset/update.html',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '控制器 - DaemonSet',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/wl-daemonset/',
|
||||
'k8s-intermediate/workload/wl-daemonset/create',
|
||||
'k8s-intermediate/workload/wl-daemonset/schedule',
|
||||
'k8s-intermediate/workload/wl-daemonset/communicate',
|
||||
'k8s-intermediate/workload/wl-daemonset/update',
|
||||
'k8s-intermediate/workload/wl-daemonset/alternative',
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '服务发现、负载均衡、网络',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/service/service',
|
||||
'k8s-intermediate/service/service-details',
|
||||
'k8s-intermediate/service/service-types',
|
||||
'k8s-intermediate/service/dns',
|
||||
'k8s-intermediate/service/host-alias',
|
||||
'k8s-intermediate/service/connecting',
|
||||
'k8s-intermediate/service/ingress',
|
||||
'k8s-intermediate/service/cni',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '存储',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/persistent/volume',
|
||||
'k8s-intermediate/persistent/volume-mount-point.html',
|
||||
'k8s-intermediate/persistent/pv',
|
||||
'k8s-intermediate/persistent/storage-class',
|
||||
'k8s-intermediate/persistent/nfs',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '配置',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/private-registry',
|
||||
'k8s-intermediate/config/config-map',
|
||||
'k8s-intermediate/config/computing-resource',
|
||||
'k8s-intermediate/config/assign-pod-node',
|
||||
{
|
||||
title: '污点和容忍',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/config/taints-toleration/',
|
||||
'k8s-intermediate/config/taints-toleration/use-case',
|
||||
'k8s-intermediate/config/taints-toleration/taint-based-evictions',
|
||||
'k8s-intermediate/config/taints-toleration/taint-nodes-by-condition',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Secret',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/config/secrets/',
|
||||
'k8s-intermediate/config/secrets/create-kubectl',
|
||||
'k8s-intermediate/config/secrets/create-manually',
|
||||
'k8s-intermediate/config/secrets/create-generator',
|
||||
'k8s-intermediate/config/secrets/create-kuboard',
|
||||
'k8s-intermediate/config/secrets/decode-edit',
|
||||
'k8s-intermediate/config/secrets/use-case-ingress-tls',
|
||||
// 'k8s-intermediate/config/secrets/use-as_file',
|
||||
// 'k8s-intermediate/config/secrets/use-as_env',
|
||||
// 'k8s-intermediate/config/secrets/use-image-pull-secrets',
|
||||
// 'k8s-intermediate/config/secrets/details',
|
||||
// 'k8s-intermediate/config/secrets/use-cases',
|
||||
// 'k8s-intermediate/config/secrets/best-practices',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Security Context',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/config/sec-ctx/',
|
||||
'k8s-intermediate/config/sec-ctx/pod',
|
||||
'k8s-intermediate/config/sec-ctx/con',
|
||||
'k8s-intermediate/config/sec-ctx/con-cap',
|
||||
'k8s-intermediate/config/sec-ctx/con-sel',
|
||||
'k8s-intermediate/config/sec-ctx/volumes',
|
||||
'k8s-intermediate/config/sec-ctx/pod-kuboard',
|
||||
'k8s-intermediate/config/sec-ctx/con-kuboard',
|
||||
]
|
||||
},
|
||||
'k8s-intermediate/config/priority-preemption',
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 高级',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '问题诊断',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/ts/application',
|
||||
'k8s-advanced/ts/cluster',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '日志',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/logs/',
|
||||
'k8s-advanced/logs/basic',
|
||||
'k8s-advanced/logs/node',
|
||||
'k8s-advanced/logs/cluster',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '调度',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/schedule/',
|
||||
'k8s-advanced/schedule/tuning',
|
||||
'k8s-advanced/schedule/framework',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '策略',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: 'Limit Range',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/policy/lr',
|
||||
'k8s-advanced/policy/lr_container',
|
||||
'k8s-advanced/policy/lr_pod',
|
||||
'k8s-advanced/policy/lr_storage',
|
||||
'k8s-advanced/policy/lr_ratio',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Resource Quota',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/policy/rq',
|
||||
'k8s-advanced/policy/rq_types',
|
||||
'k8s-advanced/policy/rq_scope',
|
||||
'k8s-advanced/policy/rq_more',
|
||||
'k8s-advanced/policy/rq_example_cpu_mem',
|
||||
'k8s-advanced/policy/rq_example_obj',
|
||||
]
|
||||
},
|
||||
// {
|
||||
// title: 'Pod Security',
|
||||
// collapsable: true,
|
||||
// children: [
|
||||
// 'k8s-advanced/policy/sec',
|
||||
// ]
|
||||
// },
|
||||
]
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 实战',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '概述',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'k8s-practice/micro-service/kuboard-view-of-k8s'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Spring Cloud',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'k8s-practice/spring-cloud/',
|
||||
// 'spring-cloud/cloud-eureka'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Open Capacity Platform',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '准备',
|
||||
collapsable: false,
|
||||
path: '/learning/k8s-practice/ocp/',
|
||||
children: [
|
||||
['k8s-practice/ocp/', 'OCP介绍'],
|
||||
'k8s-practice/ocp/prepare',
|
||||
'k8s-practice/ocp/build',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '部署',
|
||||
collapsable: false,
|
||||
path: '/learning/k8s-practice/ocp/sequence.html',
|
||||
children: [
|
||||
'k8s-practice/ocp/sequence',
|
||||
'k8s-practice/ocp/eureka-server',
|
||||
'k8s-practice/ocp/mysql',
|
||||
'k8s-practice/ocp/redis',
|
||||
'k8s-practice/ocp/auth-server',
|
||||
'k8s-practice/ocp/user-center',
|
||||
'k8s-practice/ocp/api-gateway',
|
||||
'k8s-practice/ocp/back-center',
|
||||
'k8s-practice/ocp/review',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '多环境',
|
||||
collapsable: false,
|
||||
path: '/learning/k8s-practice/ocp/export.html',
|
||||
children: [
|
||||
'k8s-practice/ocp/export',
|
||||
'k8s-practice/ocp/import',
|
||||
]
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
'/guide/': [
|
||||
{
|
||||
title: '概述',
|
||||
collapsable: false,
|
||||
children: [
|
||||
['', '概述']
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Example',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'example/busybox',
|
||||
'example/import',
|
||||
'example/monitor',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '集群管理',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'cluster/computing',
|
||||
'cluster/storage',
|
||||
'cluster/namespace'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '应用管理',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'namespace/workload',
|
||||
'namespace/secrets',
|
||||
'namespace/configMap',
|
||||
'namespace/pvc',
|
||||
'namespace/adjustion',
|
||||
'namespace/multi-env'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '问题诊断',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'diagonize/events',
|
||||
'diagonize/logs',
|
||||
'diagonize/port-forward'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '监控套件',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'monitor/',
|
||||
'monitor/apis'
|
||||
]
|
||||
},
|
||||
],
|
||||
|
||||
'/support/': [
|
||||
{
|
||||
title: '授权/支持',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '更新说明',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'change-log/v1.0.x',
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
}
|
||||
@ -7,6 +7,9 @@ module.exports = {
|
||||
// ['meta', {name: 'keywords', content: 'Kubernetes教程,Kubernetes安装,K8S教程,K8S安装,Kubernetes管理界面'}],
|
||||
['link', { rel: 'icon', href: '/favicon.png' }],
|
||||
['link', { rel: 'manifest', href: '/manifest.json' }],
|
||||
['meta', { name: 'theme-color', content: '#007af5' }],
|
||||
['meta', { name: 'apple-mobile-web-app-capable', content: 'yes' }],
|
||||
['meta', { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }],
|
||||
['script', {}, `
|
||||
var _hmt = _hmt || [];
|
||||
(function() {
|
||||
@ -27,12 +30,25 @@ module.exports = {
|
||||
// `],
|
||||
['script', { 'data-ad-client': "ca-pub-3313149841665250", async: true, src: "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"}],
|
||||
// <script data-ad-client="ca-pub-3313149841665250" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
|
||||
// ['script', { 'type': 'text/javascript', async: true, src: '//downloads.mailchimp.com/js/signup-forms/popup/unique-methods/embed.js', 'data-dojo-config': 'usePlainJson: true, isDebug: false'}],
|
||||
// ['script', { 'type': 'text/javascript' }, `
|
||||
// window.dojoRequire(["mojo/signup-forms/Loader"], function(L) { L.start({"baseUrl":"mc.us20.list-manage.com","uuid":"2273cb19eb20bb1bc5b7745a7","lid":"f1f25d6dac","uniqueMethods":true}) })
|
||||
// `],
|
||||
// <script type="text/javascript" src="//downloads.mailchimp.com/js/signup-forms/popup/unique-methods/embed.js" data-dojo-config="usePlainJson: true, isDebug: false"></script>
|
||||
// <script type="text/javascript">window.dojoRequire(["mojo/signup-forms/Loader"], function(L) { L.start({"baseUrl":"mc.us20.list-manage.com","uuid":"2273cb19eb20bb1bc5b7745a7","lid":"f1f25d6dac","uniqueMethods":true}) })</script>
|
||||
|
||||
['script', { type: 'text/javascript', async: true, src: "https://bot.4paradigm.com/web/assets/ics-web-sdk-js.js" }],
|
||||
['script', { type: 'text/javascript' }, `
|
||||
window.onload = function() {
|
||||
if (window.innerWidth > 1360) {
|
||||
console.log('init-wechat')
|
||||
IcsWebSdkJs.init('https://bot.4paradigm.com/web/chat/15516/bbc69136-e42c-4299-ba85-c57685c8417d')
|
||||
} else {
|
||||
console.log('窗口太小,不显示机器人')
|
||||
}
|
||||
}`],
|
||||
|
||||
// <script type="text/javascript" src="https://bot.4paradigm.com/web/assets/ics-web-sdk-js.js"></script>
|
||||
|
||||
// <script type="text/javascript">
|
||||
|
||||
// IcsWebSdkJs.init('https://bot.4paradigm.com/web/chat/15516/bbc69136-e42c-4299-ba85-c57685c8417d')
|
||||
|
||||
// </script>
|
||||
],
|
||||
markdown: {
|
||||
toc: { includeLevel: [2, 3] },
|
||||
@ -162,502 +178,6 @@ module.exports = {
|
||||
editLinks: true,
|
||||
// 默认为 "Edit this page"
|
||||
editLinkText: '帮助我们改善此页面!',
|
||||
sidebar: {
|
||||
'/overview/': [
|
||||
{
|
||||
title: '简介',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
'share-coder'
|
||||
]
|
||||
}, {
|
||||
title: '概念',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'quick-win',
|
||||
'why-kuboard',
|
||||
'concepts'
|
||||
]
|
||||
},
|
||||
// {
|
||||
// title: '技术支持',
|
||||
// collapsable: false,
|
||||
// children: [
|
||||
// 'support',
|
||||
// 'change-log'
|
||||
// ]
|
||||
// }
|
||||
],
|
||||
|
||||
'/articles/': [
|
||||
{
|
||||
title: '文章',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'201908/kuboard-view-of-k8s'
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
'/install/': [
|
||||
{
|
||||
title: '安装 Kubernetes',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'install-docker-desktop',
|
||||
['install-k8s', '安装Kubernetes单Master节点'],
|
||||
'install-kubernetes',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '升级 Kubernetes',
|
||||
collapsable: false,
|
||||
children: [
|
||||
// ['install-k8s-upgrade', '升级Kubernetes集群'],
|
||||
'upgrade-k8s/1.15.x-1.15.4',
|
||||
['upgrade-k8s/1.15.x-1.16.x', 'K8S从1.15.x(1.16.x)升级到 1.16.x'],
|
||||
'upgrade-k8s/calico-3.8-3.9',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '管理 Kubernetes',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'install-dashboard',
|
||||
'install-dashboard-upgrade',
|
||||
'install-kubectl',
|
||||
'config-kubectl',
|
||||
'install-k8s-dashboard',
|
||||
]
|
||||
},
|
||||
// {
|
||||
// title: '常见问题',
|
||||
// collapsable: false,
|
||||
// children: [
|
||||
// 'faq/timeout'
|
||||
// ]
|
||||
// }
|
||||
],
|
||||
|
||||
'/learning/': [
|
||||
{
|
||||
title: 'Kubernetes 介绍',
|
||||
collapsable: true,
|
||||
sidebarDepth: 3,
|
||||
children: [
|
||||
'',
|
||||
'k8s-bg/what-is-k8s',
|
||||
'k8s-bg/component',
|
||||
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 入门',
|
||||
collapsable: true,
|
||||
sidebarDepth: 3,
|
||||
children: [
|
||||
'k8s-basics/kubernetes-basics',
|
||||
'k8s-basics/deploy-app',
|
||||
'k8s-basics/explore',
|
||||
'k8s-basics/expose',
|
||||
'k8s-basics/scale',
|
||||
'k8s-basics/update',
|
||||
'k8s-basics/k8s-core-concepts'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 进阶',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '架构',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '节点',
|
||||
collapsable: true,
|
||||
// path: '/learning/k8s-bg/architecture/nodes',
|
||||
children: [
|
||||
'k8s-bg/architecture/nodes',
|
||||
'k8s-bg/architecture/nodes-mgmt',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '集群内的通信',
|
||||
collapsable: true,
|
||||
// path: '/learning/k8s-bg/architecture/com',
|
||||
children: [
|
||||
'k8s-bg/architecture/com',
|
||||
'k8s-bg/architecture/com-n-m',
|
||||
'k8s-bg/architecture/com-m-n',
|
||||
]
|
||||
},
|
||||
'k8s-bg/architecture/controller',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '操作Kubernetes',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/obj/k8s-object',
|
||||
'k8s-intermediate/obj/manage',
|
||||
'k8s-intermediate/obj/names',
|
||||
'k8s-intermediate/obj/namespaces',
|
||||
'k8s-intermediate/obj/namespace-op',
|
||||
'k8s-intermediate/obj/labels',
|
||||
'k8s-intermediate/obj/annotations',
|
||||
'k8s-intermediate/obj/field',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '容器',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/container/images',
|
||||
'k8s-intermediate/container/env',
|
||||
'k8s-intermediate/container/runtime',
|
||||
'k8s-intermediate/container/lifecycle',
|
||||
'k8s-intermediate/container/lifecycle-p',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '工作负载',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/pod',
|
||||
'k8s-intermediate/workload/pod-lifecycle',
|
||||
'k8s-intermediate/workload/init-container',
|
||||
'k8s-intermediate/workload/init-config',
|
||||
'k8s-intermediate/workload/init-debug',
|
||||
'k8s-intermediate/workload/workload',
|
||||
{
|
||||
title: '控制器 - Deployment',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/wl-deployment/',
|
||||
'k8s-intermediate/workload/wl-deployment/create',
|
||||
'k8s-intermediate/workload/wl-deployment/update',
|
||||
'k8s-intermediate/workload/wl-deployment/rollback',
|
||||
'k8s-intermediate/workload/wl-deployment/scale',
|
||||
'k8s-intermediate/workload/wl-deployment/pause',
|
||||
'k8s-intermediate/workload/wl-deployment/status',
|
||||
'k8s-intermediate/workload/wl-deployment/cleanup',
|
||||
'k8s-intermediate/workload/wl-deployment/canary',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '控制器 - StatefulSet',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/wl-statefulset/',
|
||||
'k8s-intermediate/workload/wl-statefulset/basics.html',
|
||||
'k8s-intermediate/workload/wl-statefulset/scaling.html',
|
||||
'k8s-intermediate/workload/wl-statefulset/update.html',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '控制器 - DaemonSet',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/workload/wl-daemonset/',
|
||||
'k8s-intermediate/workload/wl-daemonset/create',
|
||||
'k8s-intermediate/workload/wl-daemonset/schedule',
|
||||
'k8s-intermediate/workload/wl-daemonset/communicate',
|
||||
'k8s-intermediate/workload/wl-daemonset/update',
|
||||
'k8s-intermediate/workload/wl-daemonset/alternative',
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '服务发现、负载均衡、网络',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/service/service',
|
||||
'k8s-intermediate/service/service-details',
|
||||
'k8s-intermediate/service/service-types',
|
||||
'k8s-intermediate/service/dns',
|
||||
'k8s-intermediate/service/host-alias',
|
||||
'k8s-intermediate/service/connecting',
|
||||
'k8s-intermediate/service/ingress',
|
||||
'k8s-intermediate/service/cni',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '存储',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/persistent/volume',
|
||||
'k8s-intermediate/persistent/volume-mount-point.html',
|
||||
'k8s-intermediate/persistent/pv',
|
||||
'k8s-intermediate/persistent/storage-class',
|
||||
'k8s-intermediate/persistent/nfs',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '配置',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/private-registry',
|
||||
'k8s-intermediate/config/config-map',
|
||||
'k8s-intermediate/config/computing-resource',
|
||||
'k8s-intermediate/config/assign-pod-node',
|
||||
{
|
||||
title: '污点和容忍',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/config/taints-toleration/',
|
||||
'k8s-intermediate/config/taints-toleration/use-case',
|
||||
'k8s-intermediate/config/taints-toleration/taint-based-evictions',
|
||||
'k8s-intermediate/config/taints-toleration/taint-nodes-by-condition',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Secret',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/config/secrets/',
|
||||
'k8s-intermediate/config/secrets/create-kubectl',
|
||||
'k8s-intermediate/config/secrets/create-manually',
|
||||
'k8s-intermediate/config/secrets/create-generator',
|
||||
'k8s-intermediate/config/secrets/create-kuboard',
|
||||
'k8s-intermediate/config/secrets/decode-edit',
|
||||
'k8s-intermediate/config/secrets/use-case-ingress-tls',
|
||||
// 'k8s-intermediate/config/secrets/use-as_file',
|
||||
// 'k8s-intermediate/config/secrets/use-as_env',
|
||||
// 'k8s-intermediate/config/secrets/use-image-pull-secrets',
|
||||
// 'k8s-intermediate/config/secrets/details',
|
||||
// 'k8s-intermediate/config/secrets/use-cases',
|
||||
// 'k8s-intermediate/config/secrets/best-practices',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Security Context',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-intermediate/config/sec-ctx/',
|
||||
'k8s-intermediate/config/sec-ctx/pod',
|
||||
'k8s-intermediate/config/sec-ctx/con',
|
||||
'k8s-intermediate/config/sec-ctx/con-cap',
|
||||
'k8s-intermediate/config/sec-ctx/con-sel',
|
||||
'k8s-intermediate/config/sec-ctx/volumes',
|
||||
'k8s-intermediate/config/sec-ctx/pod-kuboard',
|
||||
'k8s-intermediate/config/sec-ctx/con-kuboard',
|
||||
]
|
||||
},
|
||||
'k8s-intermediate/config/priority-preemption',
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 高级',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '问题诊断',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/ts/application',
|
||||
'k8s-advanced/ts/cluster',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '日志',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/logs/',
|
||||
'k8s-advanced/logs/basic',
|
||||
'k8s-advanced/logs/node',
|
||||
'k8s-advanced/logs/cluster',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '调度',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/schedule/',
|
||||
'k8s-advanced/schedule/tuning',
|
||||
'k8s-advanced/schedule/framework',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '策略',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: 'Limit Range',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/policy/lr',
|
||||
'k8s-advanced/policy/lr_container',
|
||||
'k8s-advanced/policy/lr_pod',
|
||||
'k8s-advanced/policy/lr_storage',
|
||||
'k8s-advanced/policy/lr_ratio',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Resource Quota',
|
||||
collapsable: true,
|
||||
children: [
|
||||
'k8s-advanced/policy/rq',
|
||||
'k8s-advanced/policy/rq_types',
|
||||
'k8s-advanced/policy/rq_scope',
|
||||
'k8s-advanced/policy/rq_more',
|
||||
'k8s-advanced/policy/rq_example_cpu_mem',
|
||||
'k8s-advanced/policy/rq_example_obj',
|
||||
]
|
||||
},
|
||||
// {
|
||||
// title: 'Pod Security',
|
||||
// collapsable: true,
|
||||
// children: [
|
||||
// 'k8s-advanced/policy/sec',
|
||||
// ]
|
||||
// },
|
||||
]
|
||||
},
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Kubernetes 实战',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '概述',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'k8s-practice/micro-service/kuboard-view-of-k8s'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Spring Cloud',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'k8s-practice/spring-cloud/',
|
||||
// 'spring-cloud/cloud-eureka'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Open Capacity Platform',
|
||||
collapsable: true,
|
||||
children: [
|
||||
{
|
||||
title: '准备',
|
||||
collapsable: false,
|
||||
path: '/learning/k8s-practice/ocp/',
|
||||
children: [
|
||||
['k8s-practice/ocp/', 'OCP介绍'],
|
||||
'k8s-practice/ocp/prepare',
|
||||
'k8s-practice/ocp/build',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '部署',
|
||||
collapsable: false,
|
||||
path: '/learning/k8s-practice/ocp/sequence.html',
|
||||
children: [
|
||||
'k8s-practice/ocp/sequence',
|
||||
'k8s-practice/ocp/eureka-server',
|
||||
'k8s-practice/ocp/mysql',
|
||||
'k8s-practice/ocp/redis',
|
||||
'k8s-practice/ocp/auth-server',
|
||||
'k8s-practice/ocp/user-center',
|
||||
'k8s-practice/ocp/api-gateway',
|
||||
'k8s-practice/ocp/back-center',
|
||||
'k8s-practice/ocp/review',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '多环境',
|
||||
collapsable: false,
|
||||
path: '/learning/k8s-practice/ocp/export.html',
|
||||
children: [
|
||||
'k8s-practice/ocp/export',
|
||||
'k8s-practice/ocp/import',
|
||||
]
|
||||
},
|
||||
]
|
||||
},
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
'/guide/': [
|
||||
{
|
||||
title: '概述',
|
||||
collapsable: false,
|
||||
children: [
|
||||
['', '概述']
|
||||
]
|
||||
},
|
||||
{
|
||||
title: 'Example',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'example/busybox',
|
||||
'example/import',
|
||||
'example/monitor',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '集群管理',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'cluster/computing',
|
||||
'cluster/storage',
|
||||
'cluster/namespace'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '应用管理',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'namespace/workload',
|
||||
'namespace/secrets',
|
||||
'namespace/configMap',
|
||||
'namespace/pvc',
|
||||
'namespace/adjustion',
|
||||
'namespace/multi-env'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '问题诊断',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'diagonize/events',
|
||||
'diagonize/logs',
|
||||
'diagonize/port-forward'
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '监控套件',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'monitor/',
|
||||
'monitor/apis'
|
||||
]
|
||||
},
|
||||
],
|
||||
|
||||
'/support/': [
|
||||
{
|
||||
title: '授权/支持',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'',
|
||||
]
|
||||
},
|
||||
{
|
||||
title: '更新说明',
|
||||
collapsable: false,
|
||||
children: [
|
||||
'change-log/v1.0.x',
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
}
|
||||
sidebar: require('./config-sidebar')
|
||||
}
|
||||
}
|
||||
|
||||
@ -96,4 +96,4 @@ systemctl enable kubelet && systemctl start kubelet
|
||||
|
||||
docker version
|
||||
|
||||
echo -e "\033[31;1m请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新文档,并加入了在线答疑QQ群,以避免碰到问题时无人解答\033[0m"
|
||||
echo -e "\033[31;1mKubernetes.org.cn发文审核周期长,请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新文档,并加入了在线答疑QQ群808894550,以避免碰到问题时无人解答\033[0m"
|
||||
|
||||
@ -32,4 +32,4 @@ wget https://docs.projectcalico.org/v3.9/manifests/calico.yaml
|
||||
sed -i "s#192\.168\.0\.0/16#${POD_SUBNET}#" calico.yaml
|
||||
kubectl apply -f calico.yaml
|
||||
|
||||
echo -e "\033[31;1m请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新K8S安装文档,并加入了在线答疑QQ群,以避免碰到问题时无人解答\033[0m"
|
||||
echo -e "\033[31;1mKubernetes.org.cn发文审核周期长,请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新文档,并加入了在线答疑QQ群808894550,以避免碰到问题时无人解答\033[0m"
|
||||
|
||||
@ -96,4 +96,4 @@ systemctl enable kubelet && systemctl start kubelet
|
||||
|
||||
docker version
|
||||
|
||||
echo -e "\033[31;1m请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新文档,并加入了在线答疑QQ群,以避免碰到问题时无人解答\033[0m"
|
||||
echo -e "\033[31;1mKubernetes.org.cn发文审核周期长,请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新文档,并加入了在线答疑QQ群808894550,以避免碰到问题时无人解答\033[0m"
|
||||
|
||||
@ -97,4 +97,4 @@ systemctl enable kubelet && systemctl start kubelet
|
||||
|
||||
docker version
|
||||
|
||||
echo -e "\033[31;1m请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新文档,并加入了在线答疑QQ群808894550,以避免碰到问题时无人解答\033[0m"
|
||||
echo -e "\033[31;1mKubernetes.org.cn发文审核周期长,请确保您正在使用 https://kuboard.cn/install/install-k8s.html 上的最新文档,并加入了在线答疑QQ群808894550,以避免碰到问题时无人解答\033[0m"
|
||||
|
||||
Binary file not shown.
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "Kuboard文档",
|
||||
"short_name": "KuboardDocs",
|
||||
"name": "Kuboard官网",
|
||||
"short_name": "Kuboard",
|
||||
"start_url": ".",
|
||||
"display": "standalone",
|
||||
"background_color": "#fff",
|
||||
|
||||
@ -11,14 +11,13 @@
|
||||
Kubernetes教程K8S教程,绝不降低品质
|
||||
</li>
|
||||
<li>
|
||||
鼓励作者尽快完成 Kubernetes 教程 <span style="color: red; font-weight: 500;">剩下的 {{$themeConfig.incompleteRatio}}% </span>,
|
||||
所以我要
|
||||
<a href="https://github.com/eip-work/kuboard-press" target="_blank" @click="$sendGaEvent('GithubStar', '页头求GitHubStar', 'GitHubStar: ' + $page.path)">给一个 Github Star <OutboundLink/></a>
|
||||
就可以鼓励作者尽快完成 <span style="color: red; font-weight: 500;">剩下的 {{$themeConfig.incompleteRatio}}% </span>
|
||||
</li>
|
||||
<li>
|
||||
<Qq></Qq>
|
||||
群号: 808894550
|
||||
<span style="font-weight: 500;">在线答疑</span>
|
||||
<!-- <Qq></Qq>
|
||||
群号: 808894550 -->
|
||||
<span style="font-weight: 500;">在线答疑</span> 加群方式见页尾
|
||||
<!-- 初学者可选择在线课程,语言更通俗:
|
||||
<span @click="$sendGaEvent('极客时间', '极客时间', '极客时间:' + $page.path)">
|
||||
<a target="_blank" href="https://time.geekbang.org/column/intro/100015201?code=MH1Wu456g0ZsrKtQI7QidivKV2hVvzerAUxDz5pOuQs%3D">深入剖析Kubernetes</a>
|
||||
|
||||
@ -25,10 +25,3 @@ description: 熟悉Kuboard_on_Kubernetes_的最佳途径。
|
||||
* 根据微服务上下文查看监控结果
|
||||
|
||||
[在微服务上下文中监控 example](example/monitor.html) <Badge text="alpha" type="warn"/>
|
||||
|
||||
**Kuboard 可用于**
|
||||
|
||||
* 管理 Kubernetes 集群
|
||||
* 管理部署于 Kubernetes 的微服务
|
||||
* 诊断集群中的问题
|
||||
* 监控部署于 Kubernetes 的微服务
|
||||
|
||||
@ -30,6 +30,7 @@ meta:
|
||||
|
||||
* [什么是Kubernetes](/learning/k8s-bg/what-is-k8s.html)
|
||||
* [Kubernetes组件](/learning/k8s-bg/component.html)
|
||||
|
||||
## **Kubernetes 体验**
|
||||
* [安装 Kubernetes 单Master节点](/install/install-k8s.html) (30分钟,初学者也许需要更多)
|
||||
* 参照经过众多网友验证,不断优化的安装文档,迅速完成 Kubernetes 安装,拥有属于自己的 Kubernetes 集群。
|
||||
@ -37,8 +38,7 @@ meta:
|
||||
* 使用 Kuboard,无需编写复杂冗长的 YAML 文件,就可以轻松管理 Kubernetes 集群。
|
||||
* [创建 busybox](/guide/example/busybox.html) (10分钟)
|
||||
* 快速在 Kubernetes 集群中安装一个部署,并与当中的容器组交互。
|
||||
* [导入 example 微服务应用](/guide/example/import.html) (15分钟)
|
||||
* 导入一个完整的 example 微服务应用,体验 Spring Cloud 在 Kubernetes 上的部署过程。
|
||||
|
||||
|
||||
## **Kubernetes 入门**
|
||||
* [0. 学习Kubernetes基础知识](/learning/k8s-basics/kubernetes-basics.html) (10分钟)
|
||||
@ -48,6 +48,17 @@ meta:
|
||||
* [4. 伸缩应用程序](/learning/k8s-basics/scale.html) (10分钟)
|
||||
* [5. 执行滚动更新](/learning/k8s-basics/update.html) (10分钟)
|
||||
* [6. 复习Kubernetes核心概念](/learning/k8s-basics/k8s-core-concepts.html) (10分钟)
|
||||
::: tip
|
||||
* 入门教程是经典。推荐初学者学习入门教程 2 - 3 遍,甚至更多。
|
||||
* 完成入门教程之后,建议首先阅读的文章内容是:
|
||||
* [控制器](/learning/k8s-bg/architecture/controller.html)
|
||||
* [诊断应用程序](/learning/k8s-advanced/ts/application.html)
|
||||
* [使用私有 registry 中的 docker 镜像](/learning/k8s-intermediate/private-registry.html)
|
||||
* [Service 连接应用程序](/learning/k8s-intermediate/service/connecting.html)
|
||||
* [Ingress 通过互联网访问您的应用](/learning/k8s-intermediate/service/ingress.html)
|
||||
* [数据卷 Volume](/learning/k8s-intermediate/persistent/volume.html)
|
||||
* 下一步,可按教程章节顺序对 Kubernetes 各种概念进行深入理解
|
||||
:::
|
||||
|
||||
## **Kubernetes 进阶**
|
||||
* 架构
|
||||
@ -119,11 +130,15 @@ meta:
|
||||
|
||||
## **Kubernetes 实战**
|
||||
|
||||
[从微服务视角理解 Kubernetes](/learning/k8s-practice/micro-service/kuboard-view-of-k8s.html)
|
||||
* [从微服务视角理解 Kubernetes](/learning/k8s-practice/micro-service/kuboard-view-of-k8s.html)
|
||||
|
||||
在 Kubernetes 上部署 Spring Cloud 微服务:
|
||||
|
||||
* [概述](/learning/k8s-practice/spring-cloud/)
|
||||
* [导入 example 微服务应用](/guide/example/import.html) (15分钟)
|
||||
* 导入一个完整的 example 微服务应用,体验 Spring Cloud 在 Kubernetes 上的部署过程。
|
||||
* [在微服务上下文中监控 example](example/monitor.html) <Badge text="alpha" type="warn"/>
|
||||
* 根据微服务上下文查看监控结果
|
||||
|
||||
在 Kubernetes 上部署 Spring Cloud 微服务:(Open Capacity Platform)
|
||||
|
||||
|
||||
@ -53,6 +53,8 @@ meta:
|
||||
|
||||
## 实战:更新 nginx Deployment
|
||||
|
||||
<SharingBlock>
|
||||
|
||||
<el-tabs type="border-card">
|
||||
<el-tab-pane label="使用kubectl">
|
||||
|
||||
@ -127,3 +129,5 @@ watch kubectl get pods -l app=nginx
|
||||
|
||||
|
||||
~~呱唧呱唧,恭喜您,即将成为k8s的大神的您,已经迈进了您k8s的最重要的一步了--入门,那么接下来请再接再厉,继续征服k8s的高峰!!!
|
||||
|
||||
</SharingBlock>
|
||||
|
||||
@ -17,6 +17,9 @@ Kuboard v1.0.x 的更新说明
|
||||
|
||||
* 工作负载编辑器 --> Ingress --> 注解被错误写成标签了
|
||||
|
||||
* 打开监控界面时,应该使用 a 标签,而不是window.open 避免被浏览器屏蔽
|
||||
* PV可以不与StorageClass关联(手工创建PV的情况)
|
||||
* 导入工作负载时,如果存储类没有 annotations,不应该报错
|
||||
* 表单校验:数据卷名不能带小数点
|
||||
* Kubernetes 体验的安装文档需要优化。
|
||||
* 点击空白处,不关闭对话框
|
||||
|
||||
Reference in New Issue
Block a user