From a12d88668663be8fc14bc4418fd661a0e1b0b0c2 Mon Sep 17 00:00:00 2001 From: wanghe Date: Wed, 12 Jul 2023 14:04:24 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=20memos=20(#223)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/memos/0.13.2/data.yml | 10 ++++++++++ apps/memos/0.13.2/docker-compose.yml | 17 +++++++++++++++++ apps/memos/README.md | 22 ++++++++++++++++++++++ apps/memos/data.yml | 20 ++++++++++++++++++++ apps/memos/logo.png | Bin 0 -> 21996 bytes 5 files changed, 69 insertions(+) create mode 100755 apps/memos/0.13.2/data.yml create mode 100644 apps/memos/0.13.2/docker-compose.yml create mode 100644 apps/memos/README.md create mode 100755 apps/memos/data.yml create mode 100644 apps/memos/logo.png diff --git a/apps/memos/0.13.2/data.yml b/apps/memos/0.13.2/data.yml new file mode 100755 index 00000000..93ac8576 --- /dev/null +++ b/apps/memos/0.13.2/data.yml @@ -0,0 +1,10 @@ +additionalProperties: + formFields: + - default: 5230 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number diff --git a/apps/memos/0.13.2/docker-compose.yml b/apps/memos/0.13.2/docker-compose.yml new file mode 100644 index 00000000..51a4e019 --- /dev/null +++ b/apps/memos/0.13.2/docker-compose.yml @@ -0,0 +1,17 @@ +version: '3' +services: + memos: + image: neosmemo/memos:0.13.2 + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:5230 + volumes: + - ./memos:/var/opt/memos + labels: + createdBy: "Apps" +networks: + 1panel-network: + external: true \ No newline at end of file diff --git a/apps/memos/README.md b/apps/memos/README.md new file mode 100644 index 00000000..470dfb53 --- /dev/null +++ b/apps/memos/README.md @@ -0,0 +1,22 @@ +# memos + +A lightweight, self-hosted memo hub. Open Source and Free forever. + +Documentation • +Live Demo • +Discuss in Discord / Telegram + +

+ GitHub stars + Discord +

+ +![demo](https://usememos.com/demo.webp) + +## Key points + +- Open source and free forever +- Self-hosting with Docker in seconds +- Markdown support +- Customizable and sharable +- RESTful API for self-service \ No newline at end of file diff --git a/apps/memos/data.yml b/apps/memos/data.yml new file mode 100755 index 00000000..fca9fbb1 --- /dev/null +++ b/apps/memos/data.yml @@ -0,0 +1,20 @@ +name: Memos +tags: + - 工具 +title: 轻量级、自托管的备忘录中心 +type: 工具 +description: 轻量级、自托管的备忘录中心 +additionalProperties: + key: memos + name: Memos + tags: + - Tool + shortDescZh: 轻量级、自托管的备忘录中心 + shortDescEn: A lightweight, self-hosted memo hub + type: tool + crossVersionUpdate: false + limit: 0 + recommend: 0 + website: https://usememos.com/ + github: https://github.com/usememos/memos + document: https://usememos.com/docs diff --git a/apps/memos/logo.png b/apps/memos/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..05d73a3fe3493612a28917eeac24fa87565a66a8 GIT binary patch literal 21996 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