From dbfa47d70de426024802e825a3d15d110f0b63b6 Mon Sep 17 00:00:00 2001 From: Xiao Tan <16686956+bh1xaq@users.noreply.github.com> Date: Mon, 6 Nov 2023 18:23:05 +0800 Subject: [PATCH] add mkdocs-material (#356) Co-authored-by: BH1XAQ --- apps/mkdocs-material/README.md | 42 ++++++++++++++++++ apps/mkdocs-material/data.yml | 13 ++++++ apps/mkdocs-material/latest/data.yml | 10 +++++ .../mkdocs-material/latest/data/docs/index.md | 5 +++ apps/mkdocs-material/latest/data/mkdocs.yml | 3 ++ .../mkdocs-material/latest/docker-compose.yml | 17 +++++++ apps/mkdocs-material/logo.png | Bin 0 -> 16707 bytes 7 files changed, 90 insertions(+) create mode 100644 apps/mkdocs-material/README.md create mode 100644 apps/mkdocs-material/data.yml create mode 100644 apps/mkdocs-material/latest/data.yml create mode 100644 apps/mkdocs-material/latest/data/docs/index.md create mode 100644 apps/mkdocs-material/latest/data/mkdocs.yml create mode 100644 apps/mkdocs-material/latest/docker-compose.yml create mode 100644 apps/mkdocs-material/logo.png diff --git a/apps/mkdocs-material/README.md b/apps/mkdocs-material/README.md new file mode 100644 index 00000000..15579576 --- /dev/null +++ b/apps/mkdocs-material/README.md @@ -0,0 +1,42 @@ +

+ + Material for MkDocs + +

+ +

+ + 基于 + MkDocs 构建的一个强大的文档框架 + +

+ +使用 Markdown 编写文档,在几分钟内为您的开源或商业项目创建一个专业的静态网站 —— 可搜索,可定制,支持 60 多种语言,适用于所有设备。 + +[Github 仓库](https://github.com/squidfunk/mkdocs-material) + +[文档地址](https://squidfunk.github.io/mkdocs-material) + +# Material for MkDocs 1Panel 版本使用帮助 + +## UI 展示 + +![](https://ghproxy.com/https://raw.githubusercontent.com/squidfunk/mkdocs-material/master/.github/assets/screenshot.png) + +## 工作目录 + +本应用会在 1panel 的应用目录生成 mkdocs-material 的工作目录,如果没有改 1panel 的工作目录的话,会是下面这个。 + +/opt/1panel/apps/local/mkdocs-material + +## 项目目录 + +本应用支持创建多个项目,所以可以有多个项目目录,项目名称为安装时显示的名称。 + +例如,您创建的项目为 1p-docs,则您可以在 `/opt/1panel/apps/local/mkdocs-material/1p-docs` 中的 docs 目录开始您的撰写。 + +## 默认端口 + +默认端口:8111 + +您可以开启“高级设置 - 端口外部访问”,直接通过 8111 访问该文档项目。或使用反向代理功能,在不开启端口外部访问的情况下,反代这个文档项目。 \ No newline at end of file diff --git a/apps/mkdocs-material/data.yml b/apps/mkdocs-material/data.yml new file mode 100644 index 00000000..1be43b1a --- /dev/null +++ b/apps/mkdocs-material/data.yml @@ -0,0 +1,13 @@ +additionalProperties: + key: mkdocs-material #应用的 key,仅限英文,用于在 Linux 创建文件夹 + name: Material for MkDocs #应用名称 + tags: + - Tool #应用标签,可以有多个,请参照下方的标签列表 + shortDescZh: Markdown 文件托管平台 #应用中文描述,不要超过 30 个字 + shortDescEn: Markdown File Hosting Platform #应用英文描述 + type: tool #应用类型,区别于应用分类,只能有一个,请参照下方的类型列表 + crossVersionUpdate: false #是否可以跨大版本升级 + limit: 0 #应用安装数量限制,0 代表无限制 + website: https://github.com/squidfunk/mkdocs-material #官网地址 + github: https://github.com/squidfunk/mkdocs-material #github 地址 + document: https://squidfunk.github.io/mkdocs-material #文档地址 diff --git a/apps/mkdocs-material/latest/data.yml b/apps/mkdocs-material/latest/data.yml new file mode 100644 index 00000000..e2bad64f --- /dev/null +++ b/apps/mkdocs-material/latest/data.yml @@ -0,0 +1,10 @@ +additionalProperties: + formFields: + - default: 8111 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number diff --git a/apps/mkdocs-material/latest/data/docs/index.md b/apps/mkdocs-material/latest/data/docs/index.md new file mode 100644 index 00000000..18276d34 --- /dev/null +++ b/apps/mkdocs-material/latest/data/docs/index.md @@ -0,0 +1,5 @@ +# Hello World + +你好,世界! + +这是 MKDOCS 的默认页,你可以从这里开始。 \ No newline at end of file diff --git a/apps/mkdocs-material/latest/data/mkdocs.yml b/apps/mkdocs-material/latest/data/mkdocs.yml new file mode 100644 index 00000000..bb0200ab --- /dev/null +++ b/apps/mkdocs-material/latest/data/mkdocs.yml @@ -0,0 +1,3 @@ +site_name: 'MKDOCS - 1Panel' +theme: + name: material \ No newline at end of file diff --git a/apps/mkdocs-material/latest/docker-compose.yml b/apps/mkdocs-material/latest/docker-compose.yml new file mode 100644 index 00000000..a5940b99 --- /dev/null +++ b/apps/mkdocs-material/latest/docker-compose.yml @@ -0,0 +1,17 @@ +version: '3' +services: + mkdocs-material: + image: squidfunk/mkdocs-material + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:8000" + volumes: + - ./data:/docs + labels: + createdBy: "Apps" +networks: + 1panel-network: + external: true \ No newline at end of file diff --git a/apps/mkdocs-material/logo.png b/apps/mkdocs-material/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..8eec33afff07977af595f72df5da647984b2dc64 GIT binary patch literal 16707 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