From e011c231ee55130f3e1adc88cfc12e50b3ea6140 Mon Sep 17 00:00:00 2001 From: okxlin Date: Mon, 21 Oct 2024 22:51:31 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E8=B0=83=E6=95=B4arcadia?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/arcadia/1.0.0-beta.5/data.yml | 10 ---------- apps/arcadia/README.md | 9 +++++++++ apps/arcadia/beta/.env.sample | 3 +++ apps/arcadia/beta/data.yml | 17 +++++++++++++++++ .../{1.0.0-beta.5 => beta}/docker-compose.yml | 7 ++++--- apps/arcadia/data.yml | 8 ++++---- apps/arcadia/logo.png | Bin 12634 -> 3815 bytes 7 files changed, 37 insertions(+), 17 deletions(-) delete mode 100644 apps/arcadia/1.0.0-beta.5/data.yml create mode 100644 apps/arcadia/beta/.env.sample create mode 100644 apps/arcadia/beta/data.yml rename apps/arcadia/{1.0.0-beta.5 => beta}/docker-compose.yml (81%) diff --git a/apps/arcadia/1.0.0-beta.5/data.yml b/apps/arcadia/1.0.0-beta.5/data.yml deleted file mode 100644 index 9caeed33..00000000 --- a/apps/arcadia/1.0.0-beta.5/data.yml +++ /dev/null @@ -1,10 +0,0 @@ -additionalProperties: - formFields: - - default: 5678 - edit: true - envKey: PANEL_APP_PORT_HTTP - labelEn: Port - labelZh: 端口 - required: true - rule: paramPort - type: number \ No newline at end of file diff --git a/apps/arcadia/README.md b/apps/arcadia/README.md index b9caa299..95dffc95 100644 --- a/apps/arcadia/README.md +++ b/apps/arcadia/README.md @@ -3,6 +3,14 @@ Arcadia 一站式代码运维平台主要面向于脚本语言编程,适用于中小型团队与个人的开发与运维环境。 除了代码运维外 Arcadia 还是一个强大的定时任务运维平台,并且有着完善的文件系统和底层CLI命令设计。 +## 使用说明 + +- 账户密码 +``` +username: useradmin +password: passwd +``` + ## 主要功能: - **专业代码编辑器**:采用 VS Code 核心组件之一的摩纳哥编辑器,并且经过了高度定制,提供众多语言解释器支持,代码高亮效果与桌面客户端一致,还支持标签页多开。 @@ -13,3 +21,4 @@ Arcadia 一站式代码运维平台主要面向于脚本语言编程,适用于 - **代码内容对比**:集成摩纳哥专业差异编辑器,可任意选择对比文件。 - **代码在线调试**:专业的调试工具,实施反馈运行日志,支持配置调试环境。 - **内置终端命令行**:项目集成了基于 Xterm.js 的 WEB 终端工具,实时、流畅且支持标签页多开,日常使用无需手动连接至服务器。 + diff --git a/apps/arcadia/beta/.env.sample b/apps/arcadia/beta/.env.sample new file mode 100644 index 00000000..5f35c746 --- /dev/null +++ b/apps/arcadia/beta/.env.sample @@ -0,0 +1,3 @@ +CONTAINER_NAME="arcadia" +HOSTNAME="arcadia" +PANEL_APP_PORT_HTTP=40310 diff --git a/apps/arcadia/beta/data.yml b/apps/arcadia/beta/data.yml new file mode 100644 index 00000000..6d3fb64f --- /dev/null +++ b/apps/arcadia/beta/data.yml @@ -0,0 +1,17 @@ +additionalProperties: + formFields: + - default: "40310" + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Port + labelZh: 端口 + required: true + rule: paramPort + type: number + - default: "arcadia" + edit: true + envKey: HOSTNAME + labelEn: Hostname + labelZh: 主机名 + required: true + type: text diff --git a/apps/arcadia/1.0.0-beta.5/docker-compose.yml b/apps/arcadia/beta/docker-compose.yml similarity index 81% rename from apps/arcadia/1.0.0-beta.5/docker-compose.yml rename to apps/arcadia/beta/docker-compose.yml index 4fed2652..1258213d 100644 --- a/apps/arcadia/1.0.0-beta.5/docker-compose.yml +++ b/apps/arcadia/beta/docker-compose.yml @@ -1,8 +1,9 @@ services: arcadia: - image: supermanito/arcadia:beta + image: "supermanito/arcadia:beta" container_name: ${CONTAINER_NAME} - hostname: arcadia + hostname: ${HOSTNAME} + tty: true networks: - 1panel-network volumes: @@ -18,4 +19,4 @@ services: createdBy: "Apps" networks: 1panel-network: - external: true \ No newline at end of file + external: true diff --git a/apps/arcadia/data.yml b/apps/arcadia/data.yml index 149c0647..4cdb98f8 100644 --- a/apps/arcadia/data.yml +++ b/apps/arcadia/data.yml @@ -1,19 +1,19 @@ name: Arcadia tags: - - 实用工具 + - 开发工具 title: 一站式代码运维平台 description: 一站式代码运维平台 additionalProperties: key: arcadia name: Arcadia tags: - - Tool + - DevTool shortDescZh: 一站式代码运维平台 shortDescEn: One-stop code operation and maintenance platform type: tool - crossVersionUpdate: false + crossVersionUpdate: true limit: 0 - recommend: 100 + recommend: 0 website: https://arcadia.cool github: https://github.com/SuperManito/Arcadia document: https://arcadia.cool/docs diff --git a/apps/arcadia/logo.png b/apps/arcadia/logo.png index fb0c8b9efbcc229320a73687138c1c12988d6644..9efe5687a4d46ba866fa8305466a4dad8d25d1b0 100644 GIT binary patch literal 3815 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 literal 12634 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