From efe0210618f6c41978a233e1b40d7c756dc769bf Mon Sep 17 00:00:00 2001 From: Meng Sen Date: Wed, 30 Oct 2024 18:57:19 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E5=B8=83=E5=BA=94=E7=94=A8=20Synapse?= =?UTF-8?q?=20Admin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Meng Sen --- apps/synapse-admin/0.10.3/data.yml | 10 ++++++++++ apps/synapse-admin/0.10.3/docker-compose.yml | 18 ++++++++++++++++++ apps/synapse-admin/0.10.3/scripts/init.sh | 15 +++++++++++++++ .../synapse-admin/0.10.3/scripts/uninstall.sh | 10 ++++++++++ apps/synapse-admin/0.10.3/scripts/upgrade.sh | 15 +++++++++++++++ apps/synapse-admin/README.md | 15 +++++++++++++++ apps/synapse-admin/data.yml | 15 +++++++++++++++ apps/synapse-admin/logo.png | Bin 0 -> 15214 bytes 8 files changed, 98 insertions(+) create mode 100644 apps/synapse-admin/0.10.3/data.yml create mode 100644 apps/synapse-admin/0.10.3/docker-compose.yml create mode 100644 apps/synapse-admin/0.10.3/scripts/init.sh create mode 100644 apps/synapse-admin/0.10.3/scripts/uninstall.sh create mode 100644 apps/synapse-admin/0.10.3/scripts/upgrade.sh create mode 100644 apps/synapse-admin/README.md create mode 100644 apps/synapse-admin/data.yml create mode 100644 apps/synapse-admin/logo.png diff --git a/apps/synapse-admin/0.10.3/data.yml b/apps/synapse-admin/0.10.3/data.yml new file mode 100644 index 000000000..971693244 --- /dev/null +++ b/apps/synapse-admin/0.10.3/data.yml @@ -0,0 +1,10 @@ +additionalProperties: + formFields: + - default: 8080 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelZh: 访问端口 + labelEn: Port + required: true + rule: paramPort + type: number diff --git a/apps/synapse-admin/0.10.3/docker-compose.yml b/apps/synapse-admin/0.10.3/docker-compose.yml new file mode 100644 index 000000000..4b1e8d832 --- /dev/null +++ b/apps/synapse-admin/0.10.3/docker-compose.yml @@ -0,0 +1,18 @@ +networks: + 1panel-network: + external: true + +services: + synapse-admin: + image: awesometechnologies/synapse-admin:0.10.3 + container_name: ${CONTAINER_NAME} + labels: + createdBy: "Apps" + restart: always + networks: + - 1panel-network + ports: + - ${PANEL_APP_PORT_HTTP}:80 + env_file: + - /etc/1panel/envs/global.env + - ${ENV_FILE:-/etc/1panel/envs/default.env} diff --git a/apps/synapse-admin/0.10.3/scripts/init.sh b/apps/synapse-admin/0.10.3/scripts/init.sh new file mode 100644 index 000000000..77b849120 --- /dev/null +++ b/apps/synapse-admin/0.10.3/scripts/init.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/synapse-admin/0.10.3/scripts/uninstall.sh b/apps/synapse-admin/0.10.3/scripts/uninstall.sh new file mode 100644 index 000000000..c86c4fbca --- /dev/null +++ b/apps/synapse-admin/0.10.3/scripts/uninstall.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/synapse-admin/0.10.3/scripts/upgrade.sh b/apps/synapse-admin/0.10.3/scripts/upgrade.sh new file mode 100644 index 000000000..77b849120 --- /dev/null +++ b/apps/synapse-admin/0.10.3/scripts/upgrade.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +if [ -f .env ]; then + source .env + + # setup-1 add default values + CURRENT_DIR=$(pwd) + sed -i '/^ENV_FILE=/d' .env + echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env + + echo "Check Finish." + +else + echo "Error: .env file not found." +fi diff --git a/apps/synapse-admin/README.md b/apps/synapse-admin/README.md new file mode 100644 index 000000000..df68747f9 --- /dev/null +++ b/apps/synapse-admin/README.md @@ -0,0 +1,15 @@ +# Synapse Admin + +Synapse 是一个开源的 Matrix 家庭服务器实现,由 Element 开发和维护。Matrix 是安全且可互操作实时通信的开放标准。 + +![Synapse](https://file.lifebus.top/imgs/synapse_cover.png) + +![](https://img.shields.io/badge/%E6%96%B0%E7%96%86%E8%90%8C%E6%A3%AE%E8%BD%AF%E4%BB%B6%E5%BC%80%E5%8F%91%E5%B7%A5%E4%BD%9C%E5%AE%A4-%E6%8F%90%E4%BE%9B%E6%8A%80%E6%9C%AF%E6%94%AF%E6%8C%81-blue) + +## 安装说明 + +本应用为 Synapse 服务器的管理工具,用于管理 Synapse 服务器的配置文件,用户,房间等信息。 + +--- + +![Ms Studio](https://file.lifebus.top/imgs/ms_blank_001.png) diff --git a/apps/synapse-admin/data.yml b/apps/synapse-admin/data.yml new file mode 100644 index 000000000..cdcfbc6cf --- /dev/null +++ b/apps/synapse-admin/data.yml @@ -0,0 +1,15 @@ +additionalProperties: + key: synapse-admin + name: Synapse Admin + tags: + - WebSite + - Middleware + - Local + shortDescZh: 用于安全、分散通信的开放网络 + shortDescEn: An open network for secure, decentralised communication + type: website + crossVersionUpdate: true + limit: 0 + website: https://matrix.org/ + github: https://github.com/matrix-org/synapse/ + document: https://matrix.org/ diff --git a/apps/synapse-admin/logo.png b/apps/synapse-admin/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..3cebddfa2aca27c9df9bfc7faa32bdd95848aa54 GIT binary patch literal 15214 zcmV-!JCVeRP)bT%saRe6>L1k0f1lfeJ2m%Qq3)$1@x_|gfeu^wf zsOnDVykF15ADZg#IfU*$pQ<`_j%C}nEdT&u6i=`_00002j{pDwfPn}A000<>0001h zfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh> z004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;8 z7>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA z0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZp zfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<> z0001hfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq z02qh>004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l2 z2mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED> z0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA0000O zhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZpfPn}A z000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001h zfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh> z004l22mk;87>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;8 z7>ED>0DyrA0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA z0000OhyVZpfPn}A000<>0001hfd~Kq02qh>004l22mk;87>ED>0DyrA0000OhyVZp zfPn}A000<>0001hfd~Kq02nCjWItHGe7T-}`e~)4q&U)$Wm%dxZ=O1I=-@~_0063* zef#$5rkie3Zf>q4^}@o!G-%Ku4H`7)Pd_{96#&b!A>%60sw#$b9(Icdc7wd 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 literal 0 KcmV+b0RR6000031