统一编码

Signed-off-by: 萌森 <qyg2297248353@163.com>
This commit is contained in:
萌森 2024-07-22 18:47:14 +08:00
parent 523b5584ca
commit 0f7374c954
40 changed files with 1560 additions and 1562 deletions

View File

@ -1,145 +1,145 @@
# 应用制作说明 # 应用制作说明
### 基础目录 ### 基础目录
`/app` `/app`
### 应用格式 ### 应用格式
``` ```
├── app_name // 应用名称 ├── app_name // 应用名称
├── logo.png // 应用 logo , 推荐 180 * 180 px ├── logo.png // 应用 logo , 推荐 180 * 180 px
├── data.yml // 应用声明文件 ├── data.yml // 应用声明文件
├── README.md // 应用说明文档 ├── README.md // 应用说明文档
├── 2.2.0 // 应用版本 ├── 2.2.0 // 应用版本
│   ├── data.yml // 表单配置 │   ├── data.yml // 表单配置
| ├── scripts // 脚本目录 | ├── scripts // 脚本目录
│   └── docker-compose.yml // docker-compose 文件 │   └── docker-compose.yml // docker-compose 文件
└── 2.3.2 // 应用版本 └── 2.3.2 // 应用版本
├── data.yml ├── data.yml
├── data ├── data
└── docker-compose.yml └── docker-compose.yml
``` ```
#### 应用声明文件 #### 应用声明文件
```yaml ```yaml
# 固定参数 # 固定参数
additionalProperties: additionalProperties:
# 应用的 key , 仅限英文 # 应用的 key , 仅限英文
key: app_name key: app_name
# 应用名称 显示名称 # 应用名称 显示名称
name: app_show_name name: app_show_name
# 应用标签 # 应用标签
tags: tags:
# 参考 tags.yml # 参考 tags.yml
- WebSite - WebSite
# 应用中文描述, 推荐 30 字以内 # 应用中文描述, 推荐 30 字以内
shortDescZh: 应用主要概述 shortDescZh: 应用主要概述
# 应用英文描述 # 应用英文描述
shortDescEn: Application main description shortDescEn: Application main description
# 应用类型 # 应用类型
type: website type: website
# 跨大版本升级 # 跨大版本升级
crossVersionUpdate: true crossVersionUpdate: true
# 安装限制, 0 代表无限制 # 安装限制, 0 代表无限制
limit: 0 limit: 0
# 官网地址 # 官网地址
website: https://app.com website: https://app.com
# 仓库地址 # 仓库地址
github: https://github.com/app/app github: https://github.com/app/app
# 文档地址 # 文档地址
document: https://docs.app.com document: https://docs.app.com
``` ```
##### 应用类型 ##### 应用类型
| type | 说明 | | type | 说明 |
|---------|--------------------------------------------------------| |---------|--------------------------------------------------------|
| website | website 类型在 1Panel 中支持在网站中一键部署,wordpress halo 都是此 type | | website | website 类型在 1Panel 中支持在网站中一键部署,wordpress halo 都是此 type |
| runtime | mysql openresty redis 等类型的应用 | | runtime | mysql openresty redis 等类型的应用 |
| tool | phpMyAdmin redis-commander jenkins 等类型的应用 | | tool | phpMyAdmin redis-commander jenkins 等类型的应用 |
#### 脚本目录 #### 脚本目录
+ `scripts` 安装脚本文件 + `scripts` 安装脚本文件
+ `init.sh` 安装前执行 + `init.sh` 安装前执行
+ `upgrade.sh` 升级前执行 + `upgrade.sh` 升级前执行
+ `uninstall.sh` 卸载后执行 + `uninstall.sh` 卸载后执行
#### 表单配置 #### 表单配置
```yaml ```yaml
# 固定参数 # 固定参数
additionalProperties: additionalProperties:
formFields: formFields:
# 默认值 # 默认值
- default: "" - default: ""
# 安装后可修改 # 安装后可修改
edit: true edit: true
# 是否禁用 # 是否禁用
disabled: false disabled: false
# 环境变量 key # 环境变量 key
envKey: PANEL_DB_HOST envKey: PANEL_DB_HOST
# 依赖应用 key # 依赖应用 key
key: mysql key: mysql
# 英文标签 # 英文标签
labelEn: Database Service labelEn: Database Service
# 中文标签 # 中文标签
labelZh: 数据库服务 labelZh: 数据库服务
# 是否必填 # 是否必填
required: true required: true
# 依赖服务 # 依赖服务
type: service type: service
# 是否在默认值基础上增加随机字符 # 是否在默认值基础上增加随机字符
random: true random: true
# 校验规则 # 校验规则
rule: paramCommon rule: paramCommon
# 下拉选择 # 下拉选择
- default: "" - default: ""
envKey: LOG_LEVEL envKey: LOG_LEVEL
labelEn: Log level labelEn: Log level
labelZh: 日志级别 labelZh: 日志级别
required: true required: true
type: select type: select
values: values:
- label: DEBUG - label: DEBUG
value: "DEBUG" value: "DEBUG"
- label: INFO - label: INFO
value: "INFO" value: "INFO"
- label: WARNING - label: WARNING
value: "WARNING" value: "WARNING"
- label: ERROR - label: ERROR
value: "ERROR" value: "ERROR"
- label: CRITICAL - label: CRITICAL
value: "CRITICAL" value: "CRITICAL"
# 端口效验 # 端口效验
- default: 3306 - default: 3306
envKey: PANEL_APP_PORT_DB envKey: PANEL_APP_PORT_DB
labelEn: Database port labelEn: Database port
labelZh: 数据库端口 labelZh: 数据库端口
rule: paramPort rule: paramPort
type: number type: number
``` ```
##### 字段说明 ##### 字段说明
+ `type` 字段类型 + `type` 字段类型
+ `service` 依赖服务 + `service` 依赖服务
+ `password` 密码 + `password` 密码
+ `text` 文本 + `text` 文本
+ `number` 数字 + `number` 数字
+ `select` 下拉框 + `select` 下拉框
+ `rule` 校验规则 + `rule` 校验规则
+ `paramPort` 用于限制端口范围为 1-65535 + `paramPort` 用于限制端口范围为 1-65535
+ `paramCommon` 英文、数字、.-和_,长度2-30 + `paramCommon` 英文、数字、.-和_,长度2-30
+ `paramComplexity` 支持英文、数字、.%@$!&~_-,长度6-30特殊字符不能在首尾 + `paramComplexity` 支持英文、数字、.%@$!&~_-,长度6-30特殊字符不能在首尾
+ `paramExtUrl` 格式为 http(s)://(域名/ip):(端口) + `paramExtUrl` 格式为 http(s)://(域名/ip):(端口)
+ `key` 特殊值 + `key` 特殊值
+ `PANEL_APP_PORT_HTTP` Web应用端口 + `PANEL_APP_PORT_HTTP` Web应用端口
+ `PANEL_APP_PORT_HTTPS` Web应用端口 SSL + `PANEL_APP_PORT_HTTPS` Web应用端口 SSL
+ `PANEL_APP_PORT` 前缀将认定为端口,并且用于安装前的端口占用校验 + `PANEL_APP_PORT` 前缀将认定为端口,并且用于安装前的端口占用校验
#### docker-compose.yml 文件 #### docker-compose.yml 文件
通过使用 `${envKey}` 获取`表单配置`中的值 通过使用 `${envKey}` 获取`表单配置`中的值

View File

@ -1,37 +1,37 @@
additionalProperties: additionalProperties:
formFields: formFields:
- default: "/home/gitea" - default: "/home/gitea"
edit: true edit: true
envKey: GITEA_RUNNER_ROOT_PATH envKey: GITEA_RUNNER_ROOT_PATH
labelZh: 数据持久化路径 labelZh: 数据持久化路径
labelEn: Data persistence path labelEn: Data persistence path
required: true required: true
type: text type: text
- default: "" - default: ""
edit: true edit: true
envKey: GITEA_INSTANCE_URL envKey: GITEA_INSTANCE_URL
labelZh: Gitea 实例 URL labelZh: Gitea 实例 URL
labelEn: Gitea instance URL labelEn: Gitea instance URL
required: true required: true
type: text type: text
- default: "" - default: ""
edit: true edit: true
envKey: GITEA_RUNNER_REGISTRATION_TOKEN envKey: GITEA_RUNNER_REGISTRATION_TOKEN
labelZh: 注册令牌 labelZh: 注册令牌
labelEn: Registration token labelEn: Registration token
required: true required: true
type: text type: text
- default: "" - default: ""
edit: true edit: true
envKey: GITEA_RUNNER_NAME envKey: GITEA_RUNNER_NAME
labelZh: Runner 名称 labelZh: Runner 名称
labelEn: Runner name labelEn: Runner name
required: true required: true
type: text type: text
- default: "" - default: ""
edit: true edit: true
envKey: GITEA_RUNNER_LABELS envKey: GITEA_RUNNER_LABELS
labelZh: Runner 标签 labelZh: Runner 标签
labelEn: Runner labels labelEn: Runner labels
required: true required: true
type: text type: text

View File

@ -1,24 +1,24 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
gitea: gitea:
image: gitea/act_runner:0.2.10 image: gitea/act_runner:0.2.10
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
privileged: true privileged: true
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${GITEA_RUNNER_ROOT_PATH}/data:/data - ${GITEA_RUNNER_ROOT_PATH}/data:/data
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock

View File

@ -1,71 +1,71 @@
# Gitea # Gitea
Gitea 是一个轻量级的 DevOps 平台软件。 Gitea 是一个轻量级的 DevOps 平台软件。
![Gitea](https://about.gitea.com/img/home-screenshot.png) ![Gitea](https://about.gitea.com/img/home-screenshot.png)
Gitea 是一个轻量级的 DevOps 平台软件。从开发计划到产品成型的整个软件生命周期,他都能够高效而轻松的帮助团队和开发者。包括 Gitea 是一个轻量级的 DevOps 平台软件。从开发计划到产品成型的整个软件生命周期,他都能够高效而轻松的帮助团队和开发者。包括
Git 托管、代码审查、团队协作、软件包注册和 CI/CD。它与 GitHub、Bitbucket 和 GitLab 等比较类似。 Gitea 最初是从 Gogs Git 托管、代码审查、团队协作、软件包注册和 CI/CD。它与 GitHub、Bitbucket 和 GitLab 等比较类似。 Gitea 最初是从 Gogs
分支而来,几乎所有代码都已更改。 分支而来,几乎所有代码都已更改。
## 特性 ## 特性
+ 代码托管 + 代码托管
Gitea⽀持创建和管理仓库、浏览提交历史和代码⽂件、审查和合并代码提交、管理协作者、管理分⽀等。它还⽀持许多常见的Git特性⽐如标签、Cherry-pick、hook、集成协作⼯具等。 Gitea⽀持创建和管理仓库、浏览提交历史和代码⽂件、审查和合并代码提交、管理协作者、管理分⽀等。它还⽀持许多常见的Git特性⽐如标签、Cherry-pick、hook、集成协作⼯具等。
+ 轻量级和快速 + 轻量级和快速
Gitea 的设计目标之一就是轻量级和快速响应。它不像一些大型的代码托管平台那样臃肿因此在性能方面表现出色适用于资源有限的服务器环境。由于其轻量级设计Gitea Gitea 的设计目标之一就是轻量级和快速响应。它不像一些大型的代码托管平台那样臃肿因此在性能方面表现出色适用于资源有限的服务器环境。由于其轻量级设计Gitea
在资源消耗方面相对较低,可以在资源有限的环境下运行良好。 在资源消耗方面相对较低,可以在资源有限的环境下运行良好。
+ 易于部署和维护 + 易于部署和维护
轻松地部署在各种服务器上,不需要复杂的配置和依赖。这使得个人开发者或小团队可以方便地设置和管理自己的 Git 服务。 轻松地部署在各种服务器上,不需要复杂的配置和依赖。这使得个人开发者或小团队可以方便地设置和管理自己的 Git 服务。
+ 安全性 + 安全性
Gitea 注重安全性,提供了用户权限管理、访问控制列表等功能,可以确保代码和数据的安全性。 Gitea 注重安全性,提供了用户权限管理、访问控制列表等功能,可以确保代码和数据的安全性。
+ 代码评审 + 代码评审
代码评审同时支持 Pull Request workflow 和 AGit workflow。评审⼈可以在线浏览代码并提交评审意见或问题。 提交者可以接收到评审意见,并在线回 代码评审同时支持 Pull Request workflow 和 AGit workflow。评审⼈可以在线浏览代码并提交评审意见或问题。 提交者可以接收到评审意见,并在线回
复或修改代码。代码评审可以帮助用户和企业提⾼代码质量。 复或修改代码。代码评审可以帮助用户和企业提⾼代码质量。
+ CI/CD + CI/CD
Gitea Actions⽀持 CI/CD 功能,该功能兼容 GitHub Actions⽤⼾可以采用熟悉的YAML格式编写workflows也可以重⽤⼤量的已有的 Actions Gitea Actions⽀持 CI/CD 功能,该功能兼容 GitHub Actions⽤⼾可以采用熟悉的YAML格式编写workflows也可以重⽤⼤量的已有的 Actions
插件。Actions 插件支持从任意的 Git 网站中下载。 插件。Actions 插件支持从任意的 Git 网站中下载。
项目管理Gitea 通过看板和⼯单来跟踪⼀个项⽬的需求功能和bug。⼯单⽀持分支标签、⾥程碑、 指派、时间跟踪、到期时间、依赖关系等功能。 项目管理Gitea 通过看板和⼯单来跟踪⼀个项⽬的需求功能和bug。⼯单⽀持分支标签、⾥程碑、 指派、时间跟踪、到期时间、依赖关系等功能。
+ 制品库 + 制品库
Gitea支持超过 20 种不同种类的公有或私有软件包管理包括Cargo, Chef, Composer, Conan, Conda, Container, Helm, Maven, npm, Gitea支持超过 20 种不同种类的公有或私有软件包管理包括Cargo, Chef, Composer, Conan, Conda, Container, Helm, Maven, npm,
NuGet, Pub, PyPI, RubyGems, Vagrant等 NuGet, Pub, PyPI, RubyGems, Vagrant等
+ 开源社区支持 + 开源社区支持
Gitea 是一个基于 MIT 许可证的开源项目,Gitea 拥有一个活跃的开源社区,能够持续地进行开发和改进,同时也积极接受社区贡献,保持了平台的更新和创新。 Gitea 是一个基于 MIT 许可证的开源项目,Gitea 拥有一个活跃的开源社区,能够持续地进行开发和改进,同时也积极接受社区贡献,保持了平台的更新和创新。
+ 多语言支持 + 多语言支持
Gitea 提供多种语言界面,适应全球范围内的用户,促进了国际化和本地化。 Gitea 提供多种语言界面,适应全球范围内的用户,促进了国际化和本地化。
## 反向代理 ## 反向代理
> Nginx > Nginx
```nginx ```nginx
location / { location / {
proxy_pass http://localhost:3000; proxy_pass http://localhost:3000;
proxy_set_header Host $host; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Proto $scheme;
} }
``` ```
## 安装说明 ## 安装说明
这是Gitea Actions的Runner用于在Gitea Actions中执行任务。 这是Gitea Actions的Runner用于在Gitea Actions中执行任务。

View File

@ -1,19 +1,19 @@
name: Gitea Runner name: Gitea Runner
title: 新一代的代码托管平台 title: 新一代的代码托管平台
description: 新一代的代码托管平台 description: 新一代的代码托管平台
additionalProperties: additionalProperties:
key: gitea-runner key: gitea-runner
name: Gitea Runner name: Gitea Runner
tags: tags:
- WebSite - WebSite
- DevOps - DevOps
- Storage - Storage
- Local - Local
shortDescZh: 新一代的代码托管平台 shortDescZh: 新一代的代码托管平台
shortDescEn: The next generation of code hosting platform shortDescEn: The next generation of code hosting platform
type: website type: website
crossVersionUpdate: true crossVersionUpdate: true
limit: 0 limit: 0
website: https://gitea.io/ website: https://gitea.io/
github: https://github.com/go-gitea/gitea/ github: https://github.com/go-gitea/gitea/
document: https://docs.gitea.io/ document: https://docs.gitea.io/

View File

@ -1,82 +1,82 @@
# Immich (机器学习模块) # Immich (机器学习模块)
Immich - 高性能自托管照片和视频备份解决方案 Immich - 高性能自托管照片和视频备份解决方案
![Immich](https://file.lifebus.top/imgs/immich_cover.png) ![Immich](https://file.lifebus.top/imgs/immich_cover.png)
## 简介 ## 简介
欢迎您 欢迎您
您好,很高兴您能来到这里。 您好,很高兴您能来到这里。
我叫亚历克斯。我在学校时是一名电气工程师,后来因为工作和对解决问题的纯粹热爱而成为了一名软件工程师。 我叫亚历克斯。我在学校时是一名电气工程师,后来因为工作和对解决问题的纯粹热爱而成为了一名软件工程师。
我们和新生儿躺在床上,我妻子说:"我们开始积累大量宝宝的照片和视频,我不想再为 App-Which-Must-Not-Be-Name 我们和新生儿躺在床上,我妻子说:"我们开始积累大量宝宝的照片和视频,我不想再为 App-Which-Must-Not-Be-Name
付费了。你总是想为我建一些东西,为什么不为我建一个能做到这一点的应用程序呢? 付费了。你总是想为我建一些东西,为什么不为我建一个能做到这一点的应用程序呢?
就这样,这个想法开始在我脑海中萌生。之后,我开始在自助托管领域寻找具有类似备份功能和 "非命名应用程序 " 就这样,这个想法开始在我脑海中萌生。之后,我开始在自助托管领域寻找具有类似备份功能和 "非命名应用程序 "
性能水平的现有解决方案。我发现目前的解决方案主要集中在画廊类型的应用程序上。然而,我想要的是一个简单易用的备份工具,并带有一个能高效查看照片和视频的本地移动应用程序。于是,我作为一名如饥似渴的工程师踏上了寻找之旅。 性能水平的现有解决方案。我发现目前的解决方案主要集中在画廊类型的应用程序上。然而,我想要的是一个简单易用的备份工具,并带有一个能高效查看照片和视频的本地移动应用程序。于是,我作为一名如饥似渴的工程师踏上了寻找之旅。
另一个促使我执行 "不可名状的应用程序 "替代方案的动机是,我希望能为开源社区做出贡献,多年来我从这个社区中受益匪浅。 另一个促使我执行 "不可名状的应用程序 "替代方案的动机是,我希望能为开源社区做出贡献,多年来我从这个社区中受益匪浅。
我很荣幸能与大家分享这一作品,它重视隐私、回忆,以及在易用、友好的界面中回顾这些时刻的喜悦。 我很荣幸能与大家分享这一作品,它重视隐私、回忆,以及在易用、友好的界面中回顾这些时刻的喜悦。
如果您喜欢这款应用程序,或者它在某些方面对您有帮助,请考虑支持这个项目。这将有助于我继续开发和维护应用程序。 如果您喜欢这款应用程序,或者它在某些方面对您有帮助,请考虑支持这个项目。这将有助于我继续开发和维护应用程序。
## 环境准备 ## 环境准备
+ `Redis` 服务 + `Redis` 服务
Immich 使用 Redis 作为缓存服务,所以需要安装 Redis 服务。 Immich 使用 Redis 作为缓存服务,所以需要安装 Redis 服务。
## 升级说明 ## 升级说明
+ **大版本** `v1.106.2` + **大版本** `v1.106.2`
`2024/06/12` 上线,升级需要注意: `2024/06/12` 上线,升级需要注意:
1. 移除 `immich-microservices` 服务 1. 移除 `immich-microservices` 服务
2. 环境变量发生了合并 2. 环境变量发生了合并
3. 底层API发生了变化 3. 底层API发生了变化
4. 移动端需要同步更新 4. 移动端需要同步更新
## 安装参数 ## 安装参数
### 机器学习 预加载模型(CLIP) ### 机器学习 预加载模型(CLIP)
可选模型列表,粘贴时输入 `immich-app/` 之后的内容即可。 可选模型列表,粘贴时输入 `immich-app/` 之后的内容即可。
[immich-app's Collections - CLIP](https://huggingface.co/collections/immich-app/clip-654eaefb077425890874cd07) [immich-app's Collections - CLIP](https://huggingface.co/collections/immich-app/clip-654eaefb077425890874cd07)
[immich-app's Collections - Multilingual CLIP](https://huggingface.co/collections/immich-app/multilingual-clip-654eb08c2382f591eeb8c2a7) [immich-app's Collections - Multilingual CLIP](https://huggingface.co/collections/immich-app/multilingual-clip-654eb08c2382f591eeb8c2a7)
默认模型 默认模型
中文支持较好的模型 `XLM-Roberta-Large-Vit-B-16Plus` 中文支持较好的模型 `XLM-Roberta-Large-Vit-B-16Plus`
### 人脸识别 预加载模型 ### 人脸识别 预加载模型
`buffalo_l`, `buffalo_m`, `buffalo_s`, `antelopev2` `buffalo_l`, `buffalo_m`, `buffalo_s`, `antelopev2`
## 常见问题 ## 常见问题
+ 安装失败 + 安装失败
+ 网络问题,可以尝试使用代理 + 网络问题,可以尝试使用代理
+ 升级失败 + 升级失败
+ 请查看升级说明 + 请查看升级说明
+ 请查看日志,查看具体错误信息 + 请查看日志,查看具体错误信息
+ 记录安装参数,进行卸载重装 + 记录安装参数,进行卸载重装
+ 升级1Panel后,提示容器找不到 + 升级1Panel后,提示容器找不到
+ 请删除容器,重新安装 + 请删除容器,重新安装
+ 提示文件或目录不存在 + 提示文件或目录不存在
+ 可手动创建不存在的文件和目录,然后重试 + 可手动创建不存在的文件和目录,然后重试
+ 创建的文件可为空文件 + 创建的文件可为空文件
+ 每次都升级失败 + 每次都升级失败
+ 很抱歉,官方应用不支持编排式应用(一个应用包含多个容器)的安装与升级,您可以尝试手动卸载安装最新版 + 很抱歉,官方应用不支持编排式应用(一个应用包含多个容器)的安装与升级,您可以尝试手动卸载安装最新版
+ 无法访问 + 无法访问
+ 请检查是否安装了 `Redis` 服务 + 请检查是否安装了 `Redis` 服务
+ 请检查是否正确配置了 `Redis` 服务 + 请检查是否正确配置了 `Redis` 服务
+ 请检查是否正确配置了 `域名``SSL` + 请检查是否正确配置了 `域名``SSL`
+ 请检查是否正确配置了 `端口` + 请检查是否正确配置了 `端口`
+ 请检查是否正确配置了 `防火墙` 并开放了 `端口` + 请检查是否正确配置了 `防火墙` 并开放了 `端口`
+ 请检查是否正确配置了 `Nginx` 服务 + 请检查是否正确配置了 `Nginx` 服务

View File

@ -1,82 +1,82 @@
# Immich # Immich
Immich - 高性能自托管照片和视频备份解决方案 Immich - 高性能自托管照片和视频备份解决方案
![Immich](https://file.lifebus.top/imgs/immich_cover.png) ![Immich](https://file.lifebus.top/imgs/immich_cover.png)
## 简介 ## 简介
欢迎您 欢迎您
您好,很高兴您能来到这里。 您好,很高兴您能来到这里。
我叫亚历克斯。我在学校时是一名电气工程师,后来因为工作和对解决问题的纯粹热爱而成为了一名软件工程师。 我叫亚历克斯。我在学校时是一名电气工程师,后来因为工作和对解决问题的纯粹热爱而成为了一名软件工程师。
我们和新生儿躺在床上,我妻子说:"我们开始积累大量宝宝的照片和视频,我不想再为 App-Which-Must-Not-Be-Name 我们和新生儿躺在床上,我妻子说:"我们开始积累大量宝宝的照片和视频,我不想再为 App-Which-Must-Not-Be-Name
付费了。你总是想为我建一些东西,为什么不为我建一个能做到这一点的应用程序呢? 付费了。你总是想为我建一些东西,为什么不为我建一个能做到这一点的应用程序呢?
就这样,这个想法开始在我脑海中萌生。之后,我开始在自助托管领域寻找具有类似备份功能和 "非命名应用程序 " 就这样,这个想法开始在我脑海中萌生。之后,我开始在自助托管领域寻找具有类似备份功能和 "非命名应用程序 "
性能水平的现有解决方案。我发现目前的解决方案主要集中在画廊类型的应用程序上。然而,我想要的是一个简单易用的备份工具,并带有一个能高效查看照片和视频的本地移动应用程序。于是,我作为一名如饥似渴的工程师踏上了寻找之旅。 性能水平的现有解决方案。我发现目前的解决方案主要集中在画廊类型的应用程序上。然而,我想要的是一个简单易用的备份工具,并带有一个能高效查看照片和视频的本地移动应用程序。于是,我作为一名如饥似渴的工程师踏上了寻找之旅。
另一个促使我执行 "不可名状的应用程序 "替代方案的动机是,我希望能为开源社区做出贡献,多年来我从这个社区中受益匪浅。 另一个促使我执行 "不可名状的应用程序 "替代方案的动机是,我希望能为开源社区做出贡献,多年来我从这个社区中受益匪浅。
我很荣幸能与大家分享这一作品,它重视隐私、回忆,以及在易用、友好的界面中回顾这些时刻的喜悦。 我很荣幸能与大家分享这一作品,它重视隐私、回忆,以及在易用、友好的界面中回顾这些时刻的喜悦。
如果您喜欢这款应用程序,或者它在某些方面对您有帮助,请考虑支持这个项目。这将有助于我继续开发和维护应用程序。 如果您喜欢这款应用程序,或者它在某些方面对您有帮助,请考虑支持这个项目。这将有助于我继续开发和维护应用程序。
## 环境准备 ## 环境准备
+ `Redis` 服务 + `Redis` 服务
Immich 使用 Redis 作为缓存服务,所以需要安装 Redis 服务。 Immich 使用 Redis 作为缓存服务,所以需要安装 Redis 服务。
## 升级说明 ## 升级说明
+ **大版本** `v1.106.2` + **大版本** `v1.106.2`
`2024/06/12` 上线,升级需要注意: `2024/06/12` 上线,升级需要注意:
1. 移除 `immich-microservices` 服务 1. 移除 `immich-microservices` 服务
2. 环境变量发生了合并 2. 环境变量发生了合并
3. 底层API发生了变化 3. 底层API发生了变化
4. 移动端需要同步更新 4. 移动端需要同步更新
## 安装参数 ## 安装参数
### 机器学习 预加载模型(CLIP) ### 机器学习 预加载模型(CLIP)
可选模型列表,粘贴时输入 `immich-app/` 之后的内容即可。 可选模型列表,粘贴时输入 `immich-app/` 之后的内容即可。
[immich-app's Collections - CLIP](https://huggingface.co/collections/immich-app/clip-654eaefb077425890874cd07) [immich-app's Collections - CLIP](https://huggingface.co/collections/immich-app/clip-654eaefb077425890874cd07)
[immich-app's Collections - Multilingual CLIP](https://huggingface.co/collections/immich-app/multilingual-clip-654eb08c2382f591eeb8c2a7) [immich-app's Collections - Multilingual CLIP](https://huggingface.co/collections/immich-app/multilingual-clip-654eb08c2382f591eeb8c2a7)
默认模型 默认模型
中文支持较好的模型 `XLM-Roberta-Large-Vit-B-16Plus` 中文支持较好的模型 `XLM-Roberta-Large-Vit-B-16Plus`
### 人脸识别 预加载模型 ### 人脸识别 预加载模型
`buffalo_l`, `buffalo_m`, `buffalo_s`, `antelopev2` `buffalo_l`, `buffalo_m`, `buffalo_s`, `antelopev2`
## 常见问题 ## 常见问题
+ 安装失败 + 安装失败
+ 网络问题,可以尝试使用代理 + 网络问题,可以尝试使用代理
+ 升级失败 + 升级失败
+ 请查看升级说明 + 请查看升级说明
+ 请查看日志,查看具体错误信息 + 请查看日志,查看具体错误信息
+ 记录安装参数,进行卸载重装 + 记录安装参数,进行卸载重装
+ 升级1Panel后,提示容器找不到 + 升级1Panel后,提示容器找不到
+ 请删除容器,重新安装 + 请删除容器,重新安装
+ 提示文件或目录不存在 + 提示文件或目录不存在
+ 可手动创建不存在的文件和目录,然后重试 + 可手动创建不存在的文件和目录,然后重试
+ 创建的文件可为空文件 + 创建的文件可为空文件
+ 每次都升级失败 + 每次都升级失败
+ 很抱歉,官方应用不支持编排式应用(一个应用包含多个容器)的安装与升级,您可以尝试手动卸载安装最新版 + 很抱歉,官方应用不支持编排式应用(一个应用包含多个容器)的安装与升级,您可以尝试手动卸载安装最新版
+ 无法访问 + 无法访问
+ 请检查是否安装了 `Redis` 服务 + 请检查是否安装了 `Redis` 服务
+ 请检查是否正确配置了 `Redis` 服务 + 请检查是否正确配置了 `Redis` 服务
+ 请检查是否正确配置了 `域名``SSL` + 请检查是否正确配置了 `域名``SSL`
+ 请检查是否正确配置了 `端口` + 请检查是否正确配置了 `端口`
+ 请检查是否正确配置了 `防火墙` 并开放了 `端口` + 请检查是否正确配置了 `防火墙` 并开放了 `端口`
+ 请检查是否正确配置了 `Nginx` 服务 + 请检查是否正确配置了 `Nginx` 服务

View File

@ -1,82 +1,82 @@
# Immich # Immich
Immich - 高性能自托管照片和视频备份解决方案 Immich - 高性能自托管照片和视频备份解决方案
![Immich](https://file.lifebus.top/imgs/immich_cover.png) ![Immich](https://file.lifebus.top/imgs/immich_cover.png)
## 简介 ## 简介
欢迎您 欢迎您
您好,很高兴您能来到这里。 您好,很高兴您能来到这里。
我叫亚历克斯。我在学校时是一名电气工程师,后来因为工作和对解决问题的纯粹热爱而成为了一名软件工程师。 我叫亚历克斯。我在学校时是一名电气工程师,后来因为工作和对解决问题的纯粹热爱而成为了一名软件工程师。
我们和新生儿躺在床上,我妻子说:"我们开始积累大量宝宝的照片和视频,我不想再为 App-Which-Must-Not-Be-Name 我们和新生儿躺在床上,我妻子说:"我们开始积累大量宝宝的照片和视频,我不想再为 App-Which-Must-Not-Be-Name
付费了。你总是想为我建一些东西,为什么不为我建一个能做到这一点的应用程序呢? 付费了。你总是想为我建一些东西,为什么不为我建一个能做到这一点的应用程序呢?
就这样,这个想法开始在我脑海中萌生。之后,我开始在自助托管领域寻找具有类似备份功能和 "非命名应用程序 " 就这样,这个想法开始在我脑海中萌生。之后,我开始在自助托管领域寻找具有类似备份功能和 "非命名应用程序 "
性能水平的现有解决方案。我发现目前的解决方案主要集中在画廊类型的应用程序上。然而,我想要的是一个简单易用的备份工具,并带有一个能高效查看照片和视频的本地移动应用程序。于是,我作为一名如饥似渴的工程师踏上了寻找之旅。 性能水平的现有解决方案。我发现目前的解决方案主要集中在画廊类型的应用程序上。然而,我想要的是一个简单易用的备份工具,并带有一个能高效查看照片和视频的本地移动应用程序。于是,我作为一名如饥似渴的工程师踏上了寻找之旅。
另一个促使我执行 "不可名状的应用程序 "替代方案的动机是,我希望能为开源社区做出贡献,多年来我从这个社区中受益匪浅。 另一个促使我执行 "不可名状的应用程序 "替代方案的动机是,我希望能为开源社区做出贡献,多年来我从这个社区中受益匪浅。
我很荣幸能与大家分享这一作品,它重视隐私、回忆,以及在易用、友好的界面中回顾这些时刻的喜悦。 我很荣幸能与大家分享这一作品,它重视隐私、回忆,以及在易用、友好的界面中回顾这些时刻的喜悦。
如果您喜欢这款应用程序,或者它在某些方面对您有帮助,请考虑支持这个项目。这将有助于我继续开发和维护应用程序。 如果您喜欢这款应用程序,或者它在某些方面对您有帮助,请考虑支持这个项目。这将有助于我继续开发和维护应用程序。
## 环境准备 ## 环境准备
+ `Redis` 服务 + `Redis` 服务
Immich 使用 Redis 作为缓存服务,所以需要安装 Redis 服务。 Immich 使用 Redis 作为缓存服务,所以需要安装 Redis 服务。
## 升级说明 ## 升级说明
+ **大版本** `v1.106.2` + **大版本** `v1.106.2`
`2024/06/12` 上线,升级需要注意: `2024/06/12` 上线,升级需要注意:
1. 移除 `immich-microservices` 服务 1. 移除 `immich-microservices` 服务
2. 环境变量发生了合并 2. 环境变量发生了合并
3. 底层API发生了变化 3. 底层API发生了变化
4. 移动端需要同步更新 4. 移动端需要同步更新
## 安装参数 ## 安装参数
### 机器学习 预加载模型(CLIP) ### 机器学习 预加载模型(CLIP)
可选模型列表,粘贴时输入 `immich-app/` 之后的内容即可。 可选模型列表,粘贴时输入 `immich-app/` 之后的内容即可。
[immich-app's Collections - CLIP](https://huggingface.co/collections/immich-app/clip-654eaefb077425890874cd07) [immich-app's Collections - CLIP](https://huggingface.co/collections/immich-app/clip-654eaefb077425890874cd07)
[immich-app's Collections - Multilingual CLIP](https://huggingface.co/collections/immich-app/multilingual-clip-654eb08c2382f591eeb8c2a7) [immich-app's Collections - Multilingual CLIP](https://huggingface.co/collections/immich-app/multilingual-clip-654eb08c2382f591eeb8c2a7)
默认模型 默认模型
中文支持较好的模型 `XLM-Roberta-Large-Vit-B-16Plus` 中文支持较好的模型 `XLM-Roberta-Large-Vit-B-16Plus`
### 人脸识别 预加载模型 ### 人脸识别 预加载模型
`buffalo_l`, `buffalo_m`, `buffalo_s`, `antelopev2` `buffalo_l`, `buffalo_m`, `buffalo_s`, `antelopev2`
## 常见问题 ## 常见问题
+ 安装失败 + 安装失败
+ 网络问题,可以尝试使用代理 + 网络问题,可以尝试使用代理
+ 升级失败 + 升级失败
+ 请查看升级说明 + 请查看升级说明
+ 请查看日志,查看具体错误信息 + 请查看日志,查看具体错误信息
+ 记录安装参数,进行卸载重装 + 记录安装参数,进行卸载重装
+ 升级1Panel后,提示容器找不到 + 升级1Panel后,提示容器找不到
+ 请删除容器,重新安装 + 请删除容器,重新安装
+ 提示文件或目录不存在 + 提示文件或目录不存在
+ 可手动创建不存在的文件和目录,然后重试 + 可手动创建不存在的文件和目录,然后重试
+ 创建的文件可为空文件 + 创建的文件可为空文件
+ 每次都升级失败 + 每次都升级失败
+ 很抱歉,官方应用不支持编排式应用(一个应用包含多个容器)的安装与升级,您可以尝试手动卸载安装最新版 + 很抱歉,官方应用不支持编排式应用(一个应用包含多个容器)的安装与升级,您可以尝试手动卸载安装最新版
+ 无法访问 + 无法访问
+ 请检查是否安装了 `Redis` 服务 + 请检查是否安装了 `Redis` 服务
+ 请检查是否正确配置了 `Redis` 服务 + 请检查是否正确配置了 `Redis` 服务
+ 请检查是否正确配置了 `域名``SSL` + 请检查是否正确配置了 `域名``SSL`
+ 请检查是否正确配置了 `端口` + 请检查是否正确配置了 `端口`
+ 请检查是否正确配置了 `防火墙` 并开放了 `端口` + 请检查是否正确配置了 `防火墙` 并开放了 `端口`
+ 请检查是否正确配置了 `Nginx` 服务 + 请检查是否正确配置了 `Nginx` 服务

View File

@ -1,26 +1,26 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
linkding: linkding:
image: sissbruecker/linkding:1.31.0-plus-alpine image: sissbruecker/linkding:1.31.0-plus-alpine
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:9090 - ${PANEL_APP_PORT_HTTP}:9090
volumes: volumes:
- ${LINKDING_ROOT_PATH}/data:/etc/linkding/data - ${LINKDING_ROOT_PATH}/data:/etc/linkding/data
env_file: env_file:
- .env - .env
environment: environment:
- LD_SERVER_PORT=9090 - LD_SERVER_PORT=9090
- LD_DB_ENGINE=postgres - LD_DB_ENGINE=postgres
- HTTP_PROXY=${ALL_PROXY} - HTTP_PROXY=${ALL_PROXY}
- HTTPS_PROXY=${ALL_PROXY} - HTTPS_PROXY=${ALL_PROXY}

View File

@ -1,44 +1,44 @@
# linkding # linkding
链接是一个简单的书签服务,您可以自己托管。 链接是一个简单的书签服务,您可以自己托管。
![linkding](https://github.com/sissbruecker/linkding/blob/master/docs/linkding-screenshot.png) ![linkding](https://github.com/sissbruecker/linkding/blob/master/docs/linkding-screenshot.png)
## 特性 ## 特性
+ 用于组织书签的标签 + 用于组织书签的标签
+ 按文本或标签搜索 + 按文本或标签搜索
+ 批量编辑 + 批量编辑
+ 书签存档 + 书签存档
+ 深色模式 + 深色模式
+ 在 Internet Archive Wayback Machine 上自动创建已添加书签的网站的快照 + 在 Internet Archive Wayback Machine 上自动创建已添加书签的网站的快照
+ 自动提供已添加书签的网站的标题和描述 + 自动提供已添加书签的网站的标题和描述
+ 以 Netscape HTML 格式导入和导出书签 + 以 Netscape HTML 格式导入和导出书签
+ Firefox 和 Chrome 的扩展程序,以及应该在大多数浏览器中工作的书签 + Firefox 和 Chrome 的扩展程序,以及应该在大多数浏览器中工作的书签
+ 用于开发第三方应用程序的 REST API + 用于开发第三方应用程序的 REST API
+ 用于用户自助服务和原始数据访问的管理面板 + 用于用户自助服务和原始数据访问的管理面板
+ 使用Docker易于设置使用SQLite作为数据库 + 使用Docker易于设置使用SQLite作为数据库
## 安装说明 ## 安装说明
### 网站图标提供商 ### 网站图标提供商
+ 默认供应商 Google + 默认供应商 Google
`https://t1.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url={url}&size=32` `https://t1.gstatic.com/faviconV2?client=SOCIAL&type=FAVICON&fallback_opts=TYPE,SIZE,URL&url={url}&size=32`
+ 可选供应商 DuckDuckGo + 可选供应商 DuckDuckGo
`https://icons.duckduckgo.com/ip3/{domain}.ico` `https://icons.duckduckgo.com/ip3/{domain}.ico`
> 自定义供应商规则 > 自定义供应商规则
+ 参数 `{url}` + 参数 `{url}`
包括网站的方案和主机名,例如 https://example.com 包括网站的方案和主机名,例如 https://example.com
+ 参数 `{domain}` + 参数 `{domain}`
仅包含网站的主机名,例如 example.com 仅包含网站的主机名,例如 example.com
## 插件应用 ## 插件应用
+ [Firefox 书签同步](https://addons.mozilla.org/de/firefox/addon/linkding-extension/) + [Firefox 书签同步](https://addons.mozilla.org/de/firefox/addon/linkding-extension/)
+ [Chrome 书签同步](https://chrome.google.com/webstore/detail/linkding-extension/beakmhbijpdhipnjhnclmhgjlddhidpe) + [Chrome 书签同步](https://chrome.google.com/webstore/detail/linkding-extension/beakmhbijpdhipnjhnclmhgjlddhidpe)

View File

@ -1,80 +1,80 @@
# Nacos # Nacos
一个易于使用的动态服务发现、配置和服务管理平台,用于构建云原生应用。 一个易于使用的动态服务发现、配置和服务管理平台,用于构建云原生应用。
![Nacos](https://github.com/alibaba/nacos/raw/develop/doc/Nacos_Logo.png) ![Nacos](https://github.com/alibaba/nacos/raw/develop/doc/Nacos_Logo.png)
## 特性 ## 特性
## 安装说明 ## 安装说明
> 安全路径:`/nacos` > 安全路径:`/nacos`
> >
> 用户名:`nacos` > 用户名:`nacos`
> >
> 自版本 `2.4.0` 起,取消了默认密码,首次启动需要自行设置密码。 > 自版本 `2.4.0` 起,取消了默认密码,首次启动需要自行设置密码。
> 密码:`nacos` > 密码:`nacos`
### 初始化数据库 ### 初始化数据库
安装前,需要先创建数据库,数据库初始化文件:`mysql-schema.sql` 安装前,需要先创建数据库,数据库初始化文件:`mysql-schema.sql`
,可前往[Nacos](https://github.com/alibaba/nacos/blob/master/distribution/conf/mysql-schema.sql)下载。 ,可前往[Nacos](https://github.com/alibaba/nacos/blob/master/distribution/conf/mysql-schema.sql)下载。
或安装完成后,进入安装目录,在 `init` 文件夹下,导入 `mysql-schema.sql` 文件。 或安装完成后,进入安装目录,在 `init` 文件夹下,导入 `mysql-schema.sql` 文件。
### 加密配置 ### 加密配置
+ `Nacos身份验证令牌` + `Nacos身份验证令牌`
32位字符串并使用Base64编码。 32位字符串并使用Base64编码。
### JVM参数 ### JVM参数
+ `JVM_XMS` + `JVM_XMS`
这个参数设置 Java 虚拟机堆的初始内存大小。 这个参数设置 Java 虚拟机堆的初始内存大小。
它指定了 JVM 在启动时分配的堆内存大小。 它指定了 JVM 在启动时分配的堆内存大小。
例如,-Xms512m 表示 JVM 在启动时将分配 512MB 的堆内存。 例如,-Xms512m 表示 JVM 在启动时将分配 512MB 的堆内存。
+ `JVM_XMX` + `JVM_XMX`
这个参数设置 Java 虚拟机堆的最大内存大小。 这个参数设置 Java 虚拟机堆的最大内存大小。
它指定了 JVM 堆内存的上限。 它指定了 JVM 堆内存的上限。
例如,-Xmx1024m 表示 JVM 的堆内存最多可以使用 1024MB。 例如,-Xmx1024m 表示 JVM 的堆内存最多可以使用 1024MB。
+ `JVM_XMN` + `JVM_XMN`
这个参数用于设置新生代的大小。 这个参数用于设置新生代的大小。
新生代是 JVM 堆内存中的一部分,用于存放新创建的对象。 新生代是 JVM 堆内存中的一部分,用于存放新创建的对象。
设置 -Xmn 参数可以控制新生代的初始大小。 设置 -Xmn 参数可以控制新生代的初始大小。
例如,-Xmn256m 表示将新生代的初始大小设置为 256MB。 例如,-Xmn256m 表示将新生代的初始大小设置为 256MB。
+ `JVM_MS` + `JVM_MS`
这个参数用于设置 JVM 的初始元空间大小。 这个参数用于设置 JVM 的初始元空间大小。
元空间是用于存储类元数据的区域,它在 Java 8 中取代了永久代。 元空间是用于存储类元数据的区域,它在 Java 8 中取代了永久代。
例如,-XX: MetaspaceSize=128m 表示将初始的元空间大小设置为 128MB。 例如,-XX: MetaspaceSize=128m 表示将初始的元空间大小设置为 128MB。
+ `JVM_MMS` + `JVM_MMS`
这个参数用于设置 JVM 的最大元空间大小。 这个参数用于设置 JVM 的最大元空间大小。
它指定了元空间能够增长的最大限制。 它指定了元空间能够增长的最大限制。
例如,-XX:MaxMetaspaceSize=256m 表示将元空间的最大大小限制为 256MB。 例如,-XX:MaxMetaspaceSize=256m 表示将元空间的最大大小限制为 256MB。
```shell ```shell
- JVM_XMS=64m #-Xms default :1g - JVM_XMS=64m #-Xms default :1g
- JVM_XMX=64m #-Xmx default :1g - JVM_XMX=64m #-Xmx default :1g
- JVM_XMN=16m #-Xmn default :512m - JVM_XMN=16m #-Xmn default :512m
- JVM_MS=8m #-XX:MetaspaceSize default :128m - JVM_MS=8m #-XX:MetaspaceSize default :128m
- JVM_MMS=8m #-XX:MaxMetaspaceSize default :320m - JVM_MMS=8m #-XX:MaxMetaspaceSize default :320m
``` ```

View File

@ -1,44 +1,44 @@
# PostgreSQL # PostgreSQL
### PostgreSQL世界上最先进的开源关系数据库 ### PostgreSQL世界上最先进的开源关系数据库
![PostgreSQL](https://file.lifebus.top/imgs/postgresql_logo.png) ![PostgreSQL](https://file.lifebus.top/imgs/postgresql_logo.png)
## 简介 ## 简介
PostgreSQL 是一个功能强大的开源对象关系型数据库系统,它使用并扩展了 SQL 语言并结合了多种功能可以安全地存储和扩展最复杂的数据工作负载。PostgreSQL PostgreSQL 是一个功能强大的开源对象关系型数据库系统,它使用并扩展了 SQL 语言并结合了多种功能可以安全地存储和扩展最复杂的数据工作负载。PostgreSQL
起源于 1986 年加州大学伯克利分校的 POSTGRES 项目,在核心平台上已有超过 35 年的活跃开发历史。 起源于 1986 年加州大学伯克利分校的 POSTGRES 项目,在核心平台上已有超过 35 年的活跃开发历史。
PostgreSQL 因其成熟的架构、可靠性、数据完整性、强大的功能集、可扩展性,以及该软件背后的开源社区为持续提供高性能和创新解决方案所做出的奉献而赢得了良好的声誉。 PostgreSQL 因其成熟的架构、可靠性、数据完整性、强大的功能集、可扩展性,以及该软件背后的开源社区为持续提供高性能和创新解决方案所做出的奉献而赢得了良好的声誉。
PostgreSQL 可在所有主流操作系统上运行,自 2001 年以来一直符合 ACID 标准,并拥有强大的附加功能,如广受欢迎的 PostGIS PostgreSQL 可在所有主流操作系统上运行,自 2001 年以来一直符合 ACID 标准,并拥有强大的附加功能,如广受欢迎的 PostGIS
地理空间数据库扩展器。因此PostgreSQL 成为许多人和组织首选的开源关系数据库也就不足为奇了。 地理空间数据库扩展器。因此PostgreSQL 成为许多人和组织首选的开源关系数据库也就不足为奇了。
开始使用PostgreSQL从未如此简单--选择一个你想建立的项目让PostgreSQL安全稳健地存储你的数据。 开始使用PostgreSQL从未如此简单--选择一个你想建立的项目让PostgreSQL安全稳健地存储你的数据。
### 为什么使用 PostgreSQL ### 为什么使用 PostgreSQL
PostgreSQL 具有许多功能旨在帮助开发人员构建应用程序帮助管理员保护数据完整性和构建容错环境并帮助您管理数据无论数据集大小。除了免费和开源之外PostgreSQL PostgreSQL 具有许多功能旨在帮助开发人员构建应用程序帮助管理员保护数据完整性和构建容错环境并帮助您管理数据无论数据集大小。除了免费和开源之外PostgreSQL
还具有高度可扩展性。例如,您可以定义自己的数据类型,创建自定义函数,甚至可以使用不同的编程语言编写代码,而无需重新编译数据库! 还具有高度可扩展性。例如,您可以定义自己的数据类型,创建自定义函数,甚至可以使用不同的编程语言编写代码,而无需重新编译数据库!
在不违背传统功能或可能导致架构决策失误的情况下PostgreSQL 会尽量符合 SQL 标准。SQL 标准所要求的许多功能都得到了支持,尽管有时语法或功能略有不同。 在不违背传统功能或可能导致架构决策失误的情况下PostgreSQL 会尽量符合 SQL 标准。SQL 标准所要求的许多功能都得到了支持,尽管有时语法或功能略有不同。
随着时间的推移,有望进一步实现一致性。截至 2023 年 9 月发布的第 16 版PostgreSQL 至少符合 SQL:2023 核心一致性 179 个强制功能中的 随着时间的推移,有望进一步实现一致性。截至 2023 年 9 月发布的第 16 版PostgreSQL 至少符合 SQL:2023 核心一致性 179 个强制功能中的
170 个。 170 个。
截至目前,还没有关系型数据库完全符合这一标准。 截至目前,还没有关系型数据库完全符合这一标准。
## 版本选择 ## 版本选择
- `vectors` - 内置 vectors 插件。 - `vectors` - 内置 vectors 插件。
+ 插件名称vectors + 插件名称vectors
+ 插件描述vectors 插件用于存储和查询矢量数据,如地理坐标、几何图形等。 + 插件描述vectors 插件用于存储和查询矢量数据,如地理坐标、几何图形等。
+ 插件链接:[https://github.com/tensorchord/pgvecto.rs](https://github.com/tensorchord/pgvecto.rs) + 插件链接:[https://github.com/tensorchord/pgvecto.rs](https://github.com/tensorchord/pgvecto.rs)
- `alpine` - 基于 Alpine Linux 发行版。 - `alpine` - 基于 Alpine Linux 发行版。
+ 精简版 PostgreSQL基于 Alpine Linux 发行版,提供了更小的镜像体积和更快的启动速度。 + 精简版 PostgreSQL基于 Alpine Linux 发行版,提供了更小的镜像体积和更快的启动速度。
- `{version}` 默认版 - `{version}` 默认版
+ 官方默认 PostgreSQL 版本,基于 Debian Linux 发行版。 + 官方默认 PostgreSQL 版本,基于 Debian Linux 发行版。

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: postgres:14-alpine image: postgres:14-alpine
container_name: pg14-alpine-${CONTAINER_NAME} container_name: pg14-alpine-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: tensorchord/pgvecto-rs:pg14-v0.2.1 image: tensorchord/pgvecto-rs:pg14-v0.2.1
container_name: pg14-vectors-${CONTAINER_NAME} container_name: pg14-vectors-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: postgres:14 image: postgres:14
container_name: pg14-${CONTAINER_NAME} container_name: pg14-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: postgres:15-alpine image: postgres:15-alpine
container_name: pg15-alpine-${CONTAINER_NAME} container_name: pg15-alpine-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: tensorchord/pgvecto-rs:pg15-v0.2.1 image: tensorchord/pgvecto-rs:pg15-v0.2.1
container_name: pg15-vectors-${CONTAINER_NAME} container_name: pg15-vectors-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: postgres:15 image: postgres:15
container_name: pg15-${CONTAINER_NAME} container_name: pg15-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: postgres:16-alpine image: postgres:16-alpine
container_name: pg16-alpine-${CONTAINER_NAME} container_name: pg16-alpine-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: tensorchord/pgvecto-rs:pg16-v0.2.1 image: tensorchord/pgvecto-rs:pg16-v0.2.1
container_name: pg16-vectors-${CONTAINER_NAME} container_name: pg16-vectors-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,27 +1,27 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
postgresql: postgresql:
image: postgres:16 image: postgres:16
container_name: pg16-${CONTAINER_NAME} container_name: pg16-${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:5432 - ${PANEL_APP_PORT_HTTP}:5432
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes: volumes:
- ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data - ${POSTGRES_ROOT_PATH}/data:/var/lib/postgresql/data
environment: environment:
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_USER: ${POSTGRES_USER:-postgres} POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_DB: ${POSTGRES_DB:-postgres} POSTGRES_DB: ${POSTGRES_DB:-postgres}
POSTGRES_INITDB_ARGS: "--data-checksums" POSTGRES_INITDB_ARGS: "--data-checksums"

View File

@ -1,29 +1,29 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
"sentinel-dashboard": "sentinel-dashboard":
image: bladex/sentinel-dashboard:1.8.6 image: bladex/sentinel-dashboard:1.8.6
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
network_mode: ${NETWORK_MODE} network_mode: ${NETWORK_MODE}
ports: ports:
- ${PANEL_APP_PORT_HTTP}:8858 - ${PANEL_APP_PORT_HTTP}:8858
- ${COMMUNICATION_PORT}:8719 - ${COMMUNICATION_PORT}:8719
entrypoint: entrypoint:
- "java" - "java"
- "-Djava.security.egd=file:/dev/./urandom" - "-Djava.security.egd=file:/dev/./urandom"
- "-Dserver.port=8858" - "-Dserver.port=8858"
- "-Dcsp.sentinel.api.port=8719" - "-Dcsp.sentinel.api.port=8719"
- "-Dcsp.sentinel.dashboard.server=localhost:8858" - "-Dcsp.sentinel.dashboard.server=localhost:8858"
- "-Dproject.name=sentinel-dashboard" - "-Dproject.name=sentinel-dashboard"
- "-Dsentinel.dashboard.auth.username=${SENTINEL_DASHBOARD_AUTH_USERNAME}" - "-Dsentinel.dashboard.auth.username=${SENTINEL_DASHBOARD_AUTH_USERNAME}"
- "-Dsentinel.dashboard.auth.password=${SENTINEL_DASHBOARD_AUTH_PASSWORD}" - "-Dsentinel.dashboard.auth.password=${SENTINEL_DASHBOARD_AUTH_PASSWORD}"
- "-Dfeign.sentinel.enabled=${SENTINEL_DASHBOARD_FEIGN_ENABLED}" - "-Dfeign.sentinel.enabled=${SENTINEL_DASHBOARD_FEIGN_ENABLED}"
- "-jar" - "-jar"
- "app.jar" - "app.jar"

View File

@ -1,47 +1,47 @@
# Sentinel-Dashboard # Sentinel-Dashboard
随着微服务的流行服务和服务之间的稳定性变得越来越重要。Sentinel是面向分布式、多语言异构化服务架构的流量治理组件主要以流量为切入点从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。 随着微服务的流行服务和服务之间的稳定性变得越来越重要。Sentinel是面向分布式、多语言异构化服务架构的流量治理组件主要以流量为切入点从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。
## 快速启动 ## 快速启动
访问地址 访问地址
`http://IP:8858/sentinel` `http://IP:8858/sentinel`
> 用户名 > 用户名
> sentinel > sentinel
> >
> 密码 > 密码
> sentinel > sentinel
## Sentinel 的历史 ## Sentinel 的历史
+ 2012 年Sentinel 诞生,主要功能为入口流量控制。 + 2012 年Sentinel 诞生,主要功能为入口流量控制。
+ 2013-2017 年Sentinel 在阿里巴巴集团内部迅速发展成为基础技术模块覆盖了所有的核心场景。Sentinel 也因此积累了大量的流量归整场景以及生产实践。 + 2013-2017 年Sentinel 在阿里巴巴集团内部迅速发展成为基础技术模块覆盖了所有的核心场景。Sentinel 也因此积累了大量的流量归整场景以及生产实践。
+ 2018 年Sentinel 开源,并持续演进。 + 2018 年Sentinel 开源,并持续演进。
+ 2019 年Sentinel 朝着多语言扩展的方向不断探索,推出 C++ 原生版本,同时针对 Service Mesh 场景也推出了 Envoy 集群流量控制支持,以解决 + 2019 年Sentinel 朝着多语言扩展的方向不断探索,推出 C++ 原生版本,同时针对 Service Mesh 场景也推出了 Envoy 集群流量控制支持,以解决
Service Mesh 架构下多语言限流的问题。 Service Mesh 架构下多语言限流的问题。
+ 2020 年,推出 Sentinel Go 版本,继续朝着云原生方向演进。 + 2020 年,推出 Sentinel Go 版本,继续朝着云原生方向演进。
+ 2021 年Sentinel 正在朝着 2.0 云原生高可用决策中心组件进行演进;同时推出了 Sentinel Rust 原生版本。同时我们也在 Rust + 2021 年Sentinel 正在朝着 2.0 云原生高可用决策中心组件进行演进;同时推出了 Sentinel Rust 原生版本。同时我们也在 Rust
社区进行了 Envoy WASM extension 及 eBPF extension 等场景探索。 社区进行了 Envoy WASM extension 及 eBPF extension 等场景探索。
+ 2022 年Sentinel 品牌升级为流量治理,领域涵盖流量路由/调度、流量染色、流控降级、过载保护/实例摘除等;同时社区将流量治理相关标准抽出到 + 2022 年Sentinel 品牌升级为流量治理,领域涵盖流量路由/调度、流量染色、流控降级、过载保护/实例摘除等;同时社区将流量治理相关标准抽出到
OpenSergo 标准中Sentinel 作为流量治理标准实现。 OpenSergo 标准中Sentinel 作为流量治理标准实现。
## Sentinel 基本概念 ## Sentinel 基本概念
### 资源 ### 资源
资源是 Sentinel 的关键概念。它可以是 Java 应用程序中的任何内容,例如,由应用程序提供的服务,或由应用程序调用的其它应用提供的服务,甚至可以是一段代码。在接下来的文档中,我们都会用资源来描述代码块。 资源是 Sentinel 的关键概念。它可以是 Java 应用程序中的任何内容,例如,由应用程序提供的服务,或由应用程序调用的其它应用提供的服务,甚至可以是一段代码。在接下来的文档中,我们都会用资源来描述代码块。
只要通过 Sentinel API 定义的代码,就是资源,能够被 Sentinel 保护起来。大部分情况下可以使用方法签名URL甚至服务名称作为资源名来标示资源。 只要通过 Sentinel API 定义的代码,就是资源,能够被 Sentinel 保护起来。大部分情况下可以使用方法签名URL甚至服务名称作为资源名来标示资源。
### 规则 ### 规则
围绕资源的实时状态设定的规则,可以包括流量控制规则、熔断降级规则以及系统保护规则。所有规则可以动态实时调整。 围绕资源的实时状态设定的规则,可以包括流量控制规则、熔断降级规则以及系统保护规则。所有规则可以动态实时调整。
## Sentinel 是如何工作的 ## Sentinel 是如何工作的
Sentinel 的主要工作机制如下: Sentinel 的主要工作机制如下:
+ 对主流框架提供适配或者显示的 API来定义需要保护的资源并提供设施对资源进行实时统计和调用链路分析。 + 对主流框架提供适配或者显示的 API来定义需要保护的资源并提供设施对资源进行实时统计和调用链路分析。
+ 根据预设的规则结合对资源的实时统计信息对流量进行控制。同时Sentinel 提供开放的接口,方便您定义及改变规则。 + 根据预设的规则结合对资源的实时统计信息对流量进行控制。同时Sentinel 提供开放的接口,方便您定义及改变规则。
+ Sentinel 提供实时的监控系统,方便您快速了解目前系统的状态。 + Sentinel 提供实时的监控系统,方便您快速了解目前系统的状态。

View File

@ -1,36 +1,36 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
speedtest-tracker: speedtest-tracker:
image: ${SPEED_TEST_IMAGE} image: ${SPEED_TEST_IMAGE}
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:80 - ${PANEL_APP_PORT_HTTP}:80
- ${PANEL_APP_PORT_HTTPS}:443 - ${PANEL_APP_PORT_HTTPS}:443
environment: environment:
- PUID=${PUID:-1000} - PUID=${PUID:-1000}
- PGID=${PGID:-1000} - PGID=${PGID:-1000}
- TZ=${SP_TRACKER_TZ:-Asia/Shanghai} - TZ=${SP_TRACKER_TZ:-Asia/Shanghai}
- DB_CONNECTION=${SP_TRACKER_DB_TYPE:-sqlite} - DB_CONNECTION=${SP_TRACKER_DB_TYPE:-sqlite}
- DB_HOST=${SP_TRACKER_DB_HOST} - DB_HOST=${SP_TRACKER_DB_HOST}
- DB_PORT=${SP_TRACKER_DB_PORT} - DB_PORT=${SP_TRACKER_DB_PORT}
- DB_DATABASE=${MYSQL_SERVICE_DB_NAME} - DB_DATABASE=${MYSQL_SERVICE_DB_NAME}
- DB_USERNAME=${SP_TRACKER_DB_USER} - DB_USERNAME=${SP_TRACKER_DB_USER}
- DB_PASSWORD=${SP_TRACKER_DB_PASSWORD} - DB_PASSWORD=${SP_TRACKER_DB_PASSWORD}
volumes: volumes:
- ${SP_TRACKER_ROOT_PATH}/config:/config - ${SP_TRACKER_ROOT_PATH}/config:/config
healthcheck: healthcheck:
test: curl -fSs APP_URL/api/healthcheck || exit 1 test: curl -fSs APP_URL/api/healthcheck || exit 1
interval: 10s interval: 10s
retries: 3 retries: 3
start_period: 30s start_period: 30s
timeout: 10s timeout: 10s

View File

@ -1,36 +1,36 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
speedtest-tracker: speedtest-tracker:
image: ${SPEED_TEST_IMAGE} image: ${SPEED_TEST_IMAGE}
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:80 - ${PANEL_APP_PORT_HTTP}:80
- ${PANEL_APP_PORT_HTTPS}:443 - ${PANEL_APP_PORT_HTTPS}:443
environment: environment:
- PUID=${PUID:-1000} - PUID=${PUID:-1000}
- PGID=${PGID:-1000} - PGID=${PGID:-1000}
- TZ=${SP_TRACKER_TZ:-Asia/Shanghai} - TZ=${SP_TRACKER_TZ:-Asia/Shanghai}
- DB_CONNECTION=${SP_TRACKER_DB_TYPE:-sqlite} - DB_CONNECTION=${SP_TRACKER_DB_TYPE:-sqlite}
- DB_HOST=${SP_TRACKER_DB_HOST} - DB_HOST=${SP_TRACKER_DB_HOST}
- DB_PORT=${SP_TRACKER_DB_PORT} - DB_PORT=${SP_TRACKER_DB_PORT}
- DB_DATABASE=${MYSQL_SERVICE_DB_NAME} - DB_DATABASE=${MYSQL_SERVICE_DB_NAME}
- DB_USERNAME=${SP_TRACKER_DB_USER} - DB_USERNAME=${SP_TRACKER_DB_USER}
- DB_PASSWORD=${SP_TRACKER_DB_PASSWORD} - DB_PASSWORD=${SP_TRACKER_DB_PASSWORD}
volumes: volumes:
- ${SP_TRACKER_ROOT_PATH}/config:/config - ${SP_TRACKER_ROOT_PATH}/config:/config
healthcheck: healthcheck:
test: curl -fSs APP_URL/api/healthcheck || exit 1 test: curl -fSs APP_URL/api/healthcheck || exit 1
interval: 10s interval: 10s
retries: 3 retries: 3
start_period: 30s start_period: 30s
timeout: 10s timeout: 10s

View File

@ -1,36 +1,36 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
speedtest-tracker: speedtest-tracker:
image: ${SPEED_TEST_IMAGE} image: ${SPEED_TEST_IMAGE}
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:80 - ${PANEL_APP_PORT_HTTP}:80
- ${PANEL_APP_PORT_HTTPS}:443 - ${PANEL_APP_PORT_HTTPS}:443
environment: environment:
- PUID=${PUID:-1000} - PUID=${PUID:-1000}
- PGID=${PGID:-1000} - PGID=${PGID:-1000}
- TZ=${SP_TRACKER_TZ:-Asia/Shanghai} - TZ=${SP_TRACKER_TZ:-Asia/Shanghai}
- DB_CONNECTION=${SP_TRACKER_DB_TYPE:-sqlite} - DB_CONNECTION=${SP_TRACKER_DB_TYPE:-sqlite}
- DB_HOST=${SP_TRACKER_DB_HOST} - DB_HOST=${SP_TRACKER_DB_HOST}
- DB_PORT=${SP_TRACKER_DB_PORT} - DB_PORT=${SP_TRACKER_DB_PORT}
- DB_DATABASE=${MYSQL_SERVICE_DB_NAME} - DB_DATABASE=${MYSQL_SERVICE_DB_NAME}
- DB_USERNAME=${SP_TRACKER_DB_USER} - DB_USERNAME=${SP_TRACKER_DB_USER}
- DB_PASSWORD=${SP_TRACKER_DB_PASSWORD} - DB_PASSWORD=${SP_TRACKER_DB_PASSWORD}
volumes: volumes:
- ${SP_TRACKER_ROOT_PATH}/config:/config - ${SP_TRACKER_ROOT_PATH}/config:/config
healthcheck: healthcheck:
test: curl -fSs APP_URL/api/healthcheck || exit 1 test: curl -fSs APP_URL/api/healthcheck || exit 1
interval: 10s interval: 10s
retries: 3 retries: 3
start_period: 30s start_period: 30s
timeout: 10s timeout: 10s

View File

@ -1,11 +1,11 @@
# Speedtest Tracker # Speedtest Tracker
Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查。 Speedtest Tracker 是一款自托管互联网性能跟踪应用程序,可针对 Ookla 的 Speedtest 服务运行速度测试检查。
Speedtest Tracker 的主要用例是建立互联网性能的历史记录,以便您在未收到 ISP 公布的费率时收到通知。 Speedtest Tracker 的主要用例是建立互联网性能的历史记录,以便您在未收到 ISP 公布的费率时收到通知。
## 默认账户 ## 默认账户
> admin@example.com > admin@example.com
> >
> password > password

View File

@ -1,24 +1,24 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
speedtest: speedtest:
image: ghcr.io/librespeed/speedtest:5.3.3 image: ghcr.io/librespeed/speedtest:5.3.3
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:80 - ${PANEL_APP_PORT_HTTP}:80
volumes: volumes:
- ${SPEED_TEST_ROOT_PATH}/database:/database - ${SPEED_TEST_ROOT_PATH}/database:/database
environment: environment:
- MODE=standalone - MODE=standalone
- WEBPORT=80 - WEBPORT=80
env_file: env_file:
- .env - .env

View File

@ -1,50 +1,50 @@
# SpeedTest # SpeedTest
没有 Flash没有 Java没有 Websocket没有废话。 没有 Flash没有 Java没有 Websocket没有废话。
这是一个用 Javascript 实现的非常轻量级的速度测试,使用 XMLHttpRequest 和 Web Workers。 这是一个用 Javascript 实现的非常轻量级的速度测试,使用 XMLHttpRequest 和 Web Workers。
![SpeedTest](https://github.com/librespeed/speedtest/blob/master/.logo/logo3.png) ![SpeedTest](https://github.com/librespeed/speedtest/blob/master/.logo/logo3.png)
## 特性 ## 特性
+ 下载 + 下载
+ 上传 + 上传
+ Ping + Ping
+ 抖动 + 抖动
+ IP 地址、ISP、距服务器的距离可选 + IP 地址、ISP、距服务器的距离可选
+ 遥测(可选) + 遥测(可选)
+ 结果共享(可选) + 结果共享(可选)
+ 多点测试(可选) + 多点测试(可选)
## 安装说明 ## 安装说明
+ `访问密码` + `访问密码`
前提:`开启遥测` 前提:`开启遥测`
访问统计页面的密码。如果未设置,统计页面将不允许访问。 访问统计页面的密码。如果未设置,统计页面将不允许访问。
开启遥测后: `http://127.0.0.1/results/stats.php` 处将提供统计页面 开启遥测后: `http://127.0.0.1/results/stats.php` 处将提供统计页面
+ `隐藏 IP 地址 (开启遥测)` + `隐藏 IP 地址 (开启遥测)`
启用遥测时,将从收集的遥测中编辑 IP 地址和主机名,以实现更好的隐私。 启用遥测时,将从收集的遥测中编辑 IP 地址和主机名,以实现更好的隐私。
+ `邮箱地址 (开启遥测)` + `邮箱地址 (开启遥测)`
GDPR 请求的电子邮件地址。启用遥测时必须指定。 GDPR 请求的电子邮件地址。启用遥测时必须指定。
+ `ipinfo.io 的 API 密钥 (开启遥测)` + `ipinfo.io 的 API 密钥 (开启遥测)`
如果您希望提供大量测试则为必需。否则ipinfo.io 将限制您的访问。 如果您希望提供大量测试则为必需。否则ipinfo.io 将限制您的访问。
+ `禁用 ipinfo.io (开启遥测)` + `禁用 ipinfo.io (开启遥测)`
禁用后,则不会从 ipinfo.io 获取 ISP 信息和距离。 禁用后,则不会从 ipinfo.io 获取 ISP 信息和距离。
+ `距离单位 (km/mi)` + `距离单位 (km/mi)`
如果禁用 `禁用 ipinfo.io (开启遥测)`,此项决定如何测量距服务器的距离。 如果禁用 `禁用 ipinfo.io (开启遥测)`,此项决定如何测量距服务器的距离。
`km` 代表公里, `mi` 代表英里,也可以是空字符串以禁用距离测量。 `km` 代表公里, `mi` 代表英里,也可以是空字符串以禁用距离测量。

View File

@ -1,123 +1,123 @@
additionalProperties: additionalProperties:
formFields: formFields:
- child: - child:
default: "" default: ""
envKey: PANEL_DB_HOST envKey: PANEL_DB_HOST
required: true required: true
type: service type: service
default: postgresql default: postgresql
edit: true edit: true
envKey: PANEL_DB_TYPE envKey: PANEL_DB_TYPE
labelZh: 数据库 服务 (前置检查) labelZh: 数据库 服务 (前置检查)
labelEn: Database Service (Pre-check) labelEn: Database Service (Pre-check)
required: true required: true
type: apps type: apps
values: values:
- label: PostgreSQL - label: PostgreSQL
value: postgresql value: postgresql
- label: MySQL - label: MySQL
value: mysql value: mysql
- label: MariaDB - label: MariaDB
value: mariadb value: mariadb
- label: Percona - label: Percona
value: percona value: percona
- default: "/home/umami" - default: "/home/umami"
edit: true edit: true
envKey: UMAMI_ROOT_PATH envKey: UMAMI_ROOT_PATH
labelZh: 数据持久化路径 labelZh: 数据持久化路径
labelEn: Data persistence path labelEn: Data persistence path
required: true required: true
type: text type: text
- default: 3000 - default: 3000
edit: true edit: true
envKey: PANEL_APP_PORT_HTTP envKey: PANEL_APP_PORT_HTTP
labelZh: 连接端口 labelZh: 连接端口
labelEn: Connection Port labelEn: Connection Port
required: true required: true
rule: paramPort rule: paramPort
type: number type: number
- default: "" - default: ""
edit: true edit: true
envKey: APP_SECRET envKey: APP_SECRET
labelZh: 应用密钥 labelZh: 应用密钥
labelEn: Application Secret labelEn: Application Secret
random: true random: true
required: false required: false
rule: paramComplexity rule: paramComplexity
type: password type: password
- default: "/" - default: "/"
edit: true edit: true
envKey: BASE_PATH envKey: BASE_PATH
labelZh: 基础路径 labelZh: 基础路径
labelEn: Base Path labelEn: Base Path
required: true required: true
type: text type: text
- default: "" - default: ""
edit: true edit: true
envKey: ALLOWED_FRAME_URLS envKey: ALLOWED_FRAME_URLS
labelZh: 允许的 frame 地址 labelZh: 允许的 frame 地址
labelEn: Allowed frame urls labelEn: Allowed frame urls
required: false required: false
type: text type: text
- default: "0" - default: "0"
edit: true edit: true
envKey: DISABLE_BOT_CHECK envKey: DISABLE_BOT_CHECK
labelZh: 禁用机器人检测 labelZh: 禁用机器人检测
labelEn: Disable bot detection labelEn: Disable bot detection
required: true required: true
type: select type: select
values: values:
- label: 开启 - label: 开启
value: "1" value: "1"
- label: 关闭 - label: 关闭
value: "0" value: "0"
- default: postgresql - default: postgresql
edit: true edit: true
envKey: DATABASE_TYPE envKey: DATABASE_TYPE
labelZh: 数据库 类型 labelZh: 数据库 类型
labelEn: Database Type labelEn: Database Type
required: true required: true
type: select type: select
values: values:
- label: PostgreSQL - label: PostgreSQL
value: postgresql value: postgresql
- label: MySQL (MariaDB, Percona) - label: MySQL (MariaDB, Percona)
value: mysql value: mysql
- default: "127.0.0.1" - default: "127.0.0.1"
edit: true edit: true
envKey: DB_HOSTNAME envKey: DB_HOSTNAME
labelZh: 数据库 主机地址 labelZh: 数据库 主机地址
labelEn: Database Host labelEn: Database Host
required: true required: true
type: text type: text
- default: 5432 - default: 5432
edit: true edit: true
envKey: DB_PORT envKey: DB_PORT
labelZh: 数据库 端口 labelZh: 数据库 端口
labelEn: Database Port labelEn: Database Port
required: true required: true
rule: paramPort rule: paramPort
type: number type: number
- default: "umami" - default: "umami"
edit: true edit: true
envKey: DB_USERNAME envKey: DB_USERNAME
labelZh: 数据库 用户名 labelZh: 数据库 用户名
labelEn: Database User labelEn: Database User
required: true required: true
type: text type: text
- default: "" - default: ""
edit: true edit: true
envKey: DB_PASSWORD envKey: DB_PASSWORD
labelEn: Database Password labelEn: Database Password
labelZh: 数据库 密码 labelZh: 数据库 密码
random: true random: true
required: true required: true
rule: paramComplexity rule: paramComplexity
type: password type: password
- default: "umami" - default: "umami"
edit: true edit: true
envKey: DB_DATABASE_NAME envKey: DB_DATABASE_NAME
labelZh: 数据库 名称 labelZh: 数据库 名称
labelEn: Database Name labelEn: Database Name
required: true required: true
type: text type: text

View File

@ -1,24 +1,24 @@
version: "3.8" version: "3.8"
networks: networks:
1panel-network: 1panel-network:
external: true external: true
services: services:
umami: umami:
image: ghcr.io/umami-software/umami:${DATABASE_TYPE}-v2.12.1 image: ghcr.io/umami-software/umami:${DATABASE_TYPE}-v2.12.1
container_name: ${CONTAINER_NAME} container_name: ${CONTAINER_NAME}
labels: labels:
createdBy: "Apps" createdBy: "Apps"
restart: always restart: always
networks: networks:
- 1panel-network - 1panel-network
ports: ports:
- ${PANEL_APP_PORT_HTTP}:3000 - ${PANEL_APP_PORT_HTTP}:3000
env_file: env_file:
- /etc/1panel/envs/global.env - /etc/1panel/envs/global.env
- ${ENV_FILE:-/etc/1panel/envs/default.env} - ${ENV_FILE:-/etc/1panel/envs/default.env}
environment: environment:
- DISABLE_TELEMETRY = 1 - DISABLE_TELEMETRY = 1
- REMOVE_TRAILING_SLASH = 1 - REMOVE_TRAILING_SLASH = 1
- DATABASE_URL=${DATABASE_TYPE}://${DB_USERNAME}:${DB_PASSWORD}@${DB_HOSTNAME}:${DB_PORT}/${DB_DATABASE_NAME} - DATABASE_URL=${DATABASE_TYPE}://${DB_USERNAME}:${DB_PASSWORD}@${DB_HOSTNAME}:${DB_PORT}/${DB_DATABASE_NAME}

View File

@ -1,39 +1,39 @@
# Umami # Umami
为速度和效率而构建的网站分析 为速度和效率而构建的网站分析
Umami 网站分析提供您实时做出决策所需的数据。 Umami 网站分析提供您实时做出决策所需的数据。
![Umami](https://file.lifebus.top/imgs/umami_cover.jpg) ![Umami](https://file.lifebus.top/imgs/umami_cover.jpg)
## 简介 ## 简介
Umami 让您轻松分析数据 Umami 让您轻松分析数据
+ 便于使用 + 便于使用
Umami 功能强大而简单,易于使用和理解,不需要复杂的设置或标签配置。 Umami 功能强大而简单,易于使用和理解,不需要复杂的设置或标签配置。
+ UTM 和自定义事件 + UTM 和自定义事件
Umami 会自动理解带有 UTM 参数的链接,并让您根据 UTM 查看和过滤您的网站数据。此外,您还可以跟踪网站上的任何事件,例如按钮点击、表单提交、购买、新闻通讯注册等。 Umami 会自动理解带有 UTM 参数的链接,并让您根据 UTM 查看和过滤您的网站数据。此外,您还可以跟踪网站上的任何事件,例如按钮点击、表单提交、购买、新闻通讯注册等。
+ 没有 Cookie 横幅 + 没有 Cookie 横幅
所有数据均经过 Umami 匿名处理,并且不会收集您网站用户的任何个人信息。您无需选择加入 Cookie 所有数据均经过 Umami 匿名处理,并且不会收集您网站用户的任何个人信息。您无需选择加入 Cookie
横幅即可跟踪网站的性能,从而为您的用户提供更好、更值得信赖的体验。 横幅即可跟踪网站的性能,从而为您的用户提供更好、更值得信赖的体验。
默认情况下Umami 符合 GDPRP 和 CCPA。 默认情况下Umami 符合 GDPRP 和 CCPA。
## 环境准备 ## 环境准备
+ 数据库支持 + 数据库支持
+ `MySQL` 版本:`5.7+` + `MySQL` 版本:`5.7+`
+ `PostgreSQL` 版本:`12.14+` + `PostgreSQL` 版本:`12.14+`
## 安装说明 ## 安装说明
> 默认管理员帐户 > 默认管理员帐户
> >
> 用户名: admin > 用户名: admin
> >
> 密码: umami > 密码: umami

View File

@ -1,20 +1,20 @@
name: Umami name: Umami
title: 为速度和效率而构建的网站分析 title: 为速度和效率而构建的网站分析
description: 为速度和效率而构建的网站分析 description: 为速度和效率而构建的网站分析
additionalProperties: additionalProperties:
key: umami key: umami
name: Umami name: Umami
tags: tags:
- WebSite - WebSite
- Database - Database
- Middleware - Middleware
- Runtime - Runtime
- Local - Local
shortDescZh: 为速度和效率而构建的网站分析 shortDescZh: 为速度和效率而构建的网站分析
shortDescEn: A website analytics tool that is built for speed and efficiency shortDescEn: A website analytics tool that is built for speed and efficiency
type: website type: website
crossVersionUpdate: true crossVersionUpdate: true
limit: 0 limit: 0
website: https://umami.is/ website: https://umami.is/
github: https://github.com/umami-software/umami/ github: https://github.com/umami-software/umami/
document: https://umami.is/docs/ document: https://umami.is/docs/

View File

@ -1,31 +1,31 @@
appname=casdoor appname=casdoor
httpport=8000 httpport=8000
runmode=prod runmode=prod
copyrequestbody=true copyrequestbody=true
driverName=mysql driverName=mysql
dataSourceName= dataSourceName=
dbName=casdoor dbName=casdoor
tableNamePrefix= tableNamePrefix=
showSql=false showSql=false
redisEndpoint= redisEndpoint=
defaultStorageProvider= defaultStorageProvider=
isCloudIntranet=false isCloudIntranet=false
authState=casdoor authState=casdoor
socks5Proxy= socks5Proxy=
verificationCodeTimeout=10 verificationCodeTimeout=10
initScore=0 initScore=0
logPostOnly=true logPostOnly=true
isUsernameLowered=false isUsernameLowered=false
origin= origin=
originFrontend= originFrontend=
staticBaseUrl=https://cdn.casbin.org staticBaseUrl=https://cdn.casbin.org
isDemoMode=false isDemoMode=false
batchSize=100 batchSize=100
enableGzip=true enableGzip=true
ldapServerPort=389 ldapServerPort=389
radiusServerPort=1812 radiusServerPort=1812
radiusSecret=secret radiusSecret=secret
quota={"organization": -1, "user": -1, "application": -1, "provider": -1} quota={"organization": -1, "user": -1, "application": -1, "provider": -1}
logConfig={"filename": "logs/casdoor.log", "maxdays":99999, "perm":"0770"} logConfig={"filename": "logs/casdoor.log", "maxdays":99999, "perm":"0770"}
initDataFil="./init_data.json" initDataFil="./init_data.json"
frontendBaseDi="../casdoor" frontendBaseDi="../casdoor"

View File

@ -1,2 +1,2 @@
# copyright© 2024 XinJiang Ms Studio # copyright© 2024 XinJiang Ms Studio
ENV_FILE=.env ENV_FILE=.env

View File

@ -1,36 +1,36 @@
USER_UID=1000 USER_UID=1000
USER_GID=1000 USER_GID=1000
APP_NAME="Gitea" APP_NAME="Gitea"
RUN_MODE=prod RUN_MODE=prod
DOMAIN=localhost DOMAIN=localhost
SSH_DOMAIN=localhost SSH_DOMAIN=localhost
SSH_PORT=22 SSH_PORT=22
SSH_LISTEN_PORT=22 SSH_LISTEN_PORT=22
DISABLE_SSH=false DISABLE_SSH=false
HTTP_PORT=3000 HTTP_PORT=3000
ROOT_URL="" ROOT_URL=""
LFS_START_SERVER=true LFS_START_SERVER=true
DB_TYPE=sqlite3 DB_TYPE=sqlite3
DB_HOST="" DB_HOST=""
DB_NAME="" DB_NAME=""
DB_USER="" DB_USER=""
DB_PASSWD="" DB_PASSWD=""
INSTALL_LOCK=false INSTALL_LOCK=false
SECRET_KEY="" SECRET_KEY=""
DISABLE_REGISTRATION=false DISABLE_REGISTRATION=false
REQUIRE_SIGNIN_VIEW=false REQUIRE_SIGNIN_VIEW=false
GITEA__time__DEFAULT_UI_LOCATION=Asia/Shanghai GITEA__time__DEFAULT_UI_LOCATION=Asia/Shanghai
GITEA__migrations__ALLOW_LOCALNETWORKS=true GITEA__migrations__ALLOW_LOCALNETWORKS=true
GITEA__api__ENABLE_SWAGGER=false GITEA__api__ENABLE_SWAGGER=false
GITEA__ui.meta__AUTHOR=新疆萌森软件开发工作室 GITEA__ui.meta__AUTHOR=新疆萌森软件开发工作室
GITEA__ui.meta__DESCRIPTION=轻量级代码托管解决方案,支持自建和托管服务。 GITEA__ui.meta__DESCRIPTION=轻量级代码托管解决方案,支持自建和托管服务。
GITEA__ui.meta__KEYWORDS=git,gitea,github,gitlab,gitee,code GITEA__ui.meta__KEYWORDS=git,gitea,github,gitlab,gitee,code
GITEA__security__LOGIN_REMEMBER_DAYS=3 GITEA__security__LOGIN_REMEMBER_DAYS=3
GITEA__server__LOCAL_ROOT_URL=http://localhost:3000/ GITEA__server__LOCAL_ROOT_URL=http://localhost:3000/
GITEA__webhook__ALLOWED_HOST_LIST=* GITEA__webhook__ALLOWED_HOST_LIST=*
GITEA__picture__REPOSITORY_AVATAR_FALLBACK=random GITEA__picture__REPOSITORY_AVATAR_FALLBACK=random
GITEA__attachment__MAX_SIZE=1024 GITEA__attachment__MAX_SIZE=1024
GITEA__git__MAX_GIT_DIFF_LINES=10000 GITEA__git__MAX_GIT_DIFF_LINES=10000
GITEA__git.config__http.postBuffer=2147483648 GITEA__git.config__http.postBuffer=2147483648
GITEA__git.config__core.compression=0 GITEA__git.config__core.compression=0
GITEA__other__SHOW_FOOTER_POWERED_BY=false GITEA__other__SHOW_FOOTER_POWERED_BY=false

View File

@ -1,2 +1,2 @@
# copyright© 2024 XinJiang Ms Studio # copyright© 2024 XinJiang Ms Studio
TZ=Asia/Shanghai TZ=Asia/Shanghai

View File

@ -1,29 +1,29 @@
# 外部数据库支持配置 # 外部数据库支持配置
# PostgreSQL # PostgreSQL
# hibernate_dialect=io.onedev.server.persistence.PostgreSQLDialect # hibernate_dialect=io.onedev.server.persistence.PostgreSQLDialect
# hibernate_connection_driver_class=org.postgresql.Driver # hibernate_connection_driver_class=org.postgresql.Driver
# hibernate_connection_url=jdbc:postgresql://localhost:5432/onedev # hibernate_connection_url=jdbc:postgresql://localhost:5432/onedev
# hibernate_connection_username=postgres # hibernate_connection_username=postgres
# hibernate_connection_password=postgres # hibernate_connection_password=postgres
# MySQL # MySQL
# hibernate_dialect=org.hibernate.dialect.MySQL5InnoDBDialect # hibernate_dialect=org.hibernate.dialect.MySQL5InnoDBDialect
# hibernate_connection_driver_class=com.mysql.cj.jdbc.Driver # hibernate_connection_driver_class=com.mysql.cj.jdbc.Driver
# hibernate_connection_url=jdbc:mysql://localhost:3306/onedev?serverTimezone=UTC&allowPublicKeyRetrieval=true&useSSL=false&disableMariaDbDriver=true # hibernate_connection_url=jdbc:mysql://localhost:3306/onedev?serverTimezone=UTC&allowPublicKeyRetrieval=true&useSSL=false&disableMariaDbDriver=true
# hibernate_connection_username=root # hibernate_connection_username=root
# hibernate_connection_password=root # hibernate_connection_password=root
# MariaDB # MariaDB
# hibernate_dialect=org.hibernate.dialect.MySQL5InnoDBDialect # hibernate_dialect=org.hibernate.dialect.MySQL5InnoDBDialect
# hibernate_connection_driver_class=org.mariadb.jdbc.Driver # hibernate_connection_driver_class=org.mariadb.jdbc.Driver
# hibernate_connection_url=jdbc:mariadb://localhost:3306/onedev # hibernate_connection_url=jdbc:mariadb://localhost:3306/onedev
# hibernate_connection_username=root # hibernate_connection_username=root
# hibernate_connection_password=root # hibernate_connection_password=root
# MS SQL Server # MS SQL Server
# hibernate_dialect=org.hibernate.dialect.SQLServer2012Dialect # hibernate_dialect=org.hibernate.dialect.SQLServer2012Dialect
# hibernate_connection_driver_class=com.microsoft.sqlserver.jdbc.SQLServerDriver # hibernate_connection_driver_class=com.microsoft.sqlserver.jdbc.SQLServerDriver
# hibernate_connection_url=jdbc:sqlserver://localhost:1433;databaseName=onedev # hibernate_connection_url=jdbc:sqlserver://localhost:1433;databaseName=onedev
# hibernate_connection_username=sa # hibernate_connection_username=sa
# hibernate_connection_password=sa # hibernate_connection_password=sa

View File

@ -67,9 +67,7 @@ for app_directory in "${APPS_DIR:?}"/*; do
sed -i "s/^ key: ${app_name}/ key: ${app_name_pre}/g" "${LOCAL_DIR:?}/$app_name_pre/data.yml" sed -i "s/^ key: ${app_name}/ key: ${app_name_pre}/g" "${LOCAL_DIR:?}/$app_name_pre/data.yml"
awk '/^name: / {print $0, "预览版"; next} {print}' "${LOCAL_DIR:?}/$app_name_pre/data.yml" > "${LOCAL_DIR:?}/$app_name_pre/data_tmp.yml" awk '{if (/^name: /) {sub(/$/, " 预览版"); print} else if (/^ name: /) {sub(/$/, " 预览版"); print} else {print}}' "${LOCAL_DIR:?}/$app_name_pre/data.yml" > "${LOCAL_DIR:?}/$app_name_pre/data_tmp.yml"
mv "${LOCAL_DIR:?}/$app_name_pre/data_tmp.yml" "${LOCAL_DIR:?}/$app_name_pre/data.yml"
awk '/^ name: / {print $0, "预览版"; next} {print}' "${LOCAL_DIR:?}/$app_name_pre/data.yml" > "${LOCAL_DIR:?}/$app_name_pre/data_tmp.yml"
mv "${LOCAL_DIR:?}/$app_name_pre/data_tmp.yml" "${LOCAL_DIR:?}/$app_name_pre/data.yml" mv "${LOCAL_DIR:?}/$app_name_pre/data_tmp.yml" "${LOCAL_DIR:?}/$app_name_pre/data.yml"
done done

View File

@ -1,5 +1,5 @@
[{000214A0-0000-0000-C000-000000000046}] [{000214A0-0000-0000-C000-000000000046}]
Prop3=19,11 Prop3=19,11
[InternetShortcut] [InternetShortcut]
IDList= IDList=
URL=https://lifebus.top/ URL=https://lifebus.top/