From c6eccd687bdf52d0e0a0a22f82b2d459d4bbcb5c Mon Sep 17 00:00:00 2001 From: cnphpbb Date: Thu, 13 Aug 2026 17:59:23 +0800 Subject: [PATCH] chore: add env.cfg.example templates and clean up config files --- $user/lsd/config.yaml | 73 ++++++ $user/lsd/ colors.yaml | 32 +++ .gitattributes | 13 + .gitignore | 12 +- AGENTS.md | 265 ++++++++++++++++++- VaultWarden/env.cfg.example | 22 ++ WireGuardVPN/wg-easy/env.cfg.example | 22 ++ adminer/env.cfg.example | 15 ++ adminer/readme.md | 42 +++ adminer/stack.yml | 15 ++ alist/env.cfg.example | 14 + anqicms/env.cfg.example | 24 ++ anqicms/readme.md | 125 +++++++++ anqicms/stack.yml | 24 ++ ansible/env.cfg.example | 11 + base/env.cfg.example | 13 + builder/alpine/env.cfg.example | 11 + builder/debian/env.cfg.example | 11 + builder/golang/env.cfg.example | 16 ++ builder/nodejs/env.cfg.example | 15 ++ crush.json | 6 + dbSer/couchdb/env.cfg.example | 22 ++ dbSer/loki/env.cfg.example | 13 + dbSer/mysql/env.cfg.example | 26 ++ dbSer/postgres/env.cfg.example | 30 +++ dbSer/postgres/prod.stack.yml | 2 +- dbSer/redis/env.cfg.example | 26 ++ domain-admin/env.cfg.example | 15 ++ drawnix/env.cfg.example | 13 + dufs/env.cfg.example | 23 ++ etc/docker/daemon.jsonc | 27 ++ flame/env.cfg.example | 18 ++ gitea/env.cfg.example | 30 +++ goofish/.env.example | 128 +++++++++ grafana/env.cfg.example | 13 + grafana/readme.md | 71 ++++- haproxy/env.cfg.example | 23 ++ hindsight/backup.job | 29 +++ hindsight/env.cfg.example | 43 +++ hindsight/readme.md | 210 +++++++++++++++ hindsight/stack.yml | 77 ++++++ honcho/create-multi-keys.sh | 126 +++++++++ honcho/env.cfg.example | 85 ++++++ honcho/readme.md | 374 +++++++++++++++++++++++++++ honcho/share-multi-client.md | 285 ++++++++++++++++++++ honcho/stack.yml | 173 +++++++++++++ hub-registry/env.cfg.example | 13 + it-tools/compose.yml | 2 +- it-tools/env.cfg.example | 11 + it-tools/readme.md | 59 +++++ joplin/amd.env.cfg.example | 32 +++ joplin/env.cfg.example | 36 +++ memos/db-184.cnf | 2 +- memos/db-61.cnf | 2 +- memos/db-lkc.cnf | 6 + memos/db-local.cnf | 6 + memos/env.cfg.example | 21 ++ memos/local.stack.yml | 48 +++- memos/prod.stack.yml | 42 ++- mynat/env.cfg.example | 13 + n8n/env.cfg.example | 60 +++++ n9e/compose-pgsql/compose.yml | 6 +- n9e/compose-pgsql/stack.yml | 8 +- n9e/readme.md | 2 +- netdata/env.cfg.example | 13 + nginxpulse/env.cfg.example | 31 +++ nginxpulse/mkdir.sh | 11 + nginxpulse/stack.yml | 34 +++ ntfy/env.cfg.example | 29 +++ ntfy/stack.yml | 33 ++- portainer-ce/env.cfg.example | 6 + portainer-ce/portainer-ce.yaml | 5 +- portainer-ce/readme.md | 61 ++--- readme.md | 130 ++++++++++ rustfs/env.cfg.example | 26 ++ searxng/env.cfg.example | 17 ++ searxng/stack.yml | 5 +- shell/proxy-glm5_2.sh | 269 +++++++++++++++++++ shell/proxy.ps1 | 353 +++++++++++++++++++++++++ shell/proxy.sh | 107 ++++++++ tasks/env.cfg.example | 13 + tasks/stack.yml | 20 ++ traefik/env.cfg.example | 15 ++ user-config/lsd/config.yaml | 73 ++++++ user-config/lsd/ colors.yaml | 32 +++ victoriametrics/compose.yml | 1 + victoriametrics/env.cfg.example | 13 + webout/env.cfg.example | 23 ++ 88 files changed, 4264 insertions(+), 88 deletions(-) create mode 100644 $user/lsd/config.yaml create mode 100644 $user/lsd/ colors.yaml create mode 100644 .gitattributes create mode 100644 VaultWarden/env.cfg.example create mode 100644 WireGuardVPN/wg-easy/env.cfg.example create mode 100644 adminer/env.cfg.example create mode 100644 adminer/readme.md create mode 100644 adminer/stack.yml create mode 100644 alist/env.cfg.example create mode 100644 anqicms/env.cfg.example create mode 100644 anqicms/readme.md create mode 100644 anqicms/stack.yml create mode 100644 ansible/env.cfg.example create mode 100644 base/env.cfg.example create mode 100644 builder/alpine/env.cfg.example create mode 100644 builder/debian/env.cfg.example create mode 100644 builder/golang/env.cfg.example create mode 100644 builder/nodejs/env.cfg.example create mode 100644 crush.json create mode 100644 dbSer/couchdb/env.cfg.example create mode 100644 dbSer/loki/env.cfg.example create mode 100644 dbSer/mysql/env.cfg.example create mode 100644 dbSer/postgres/env.cfg.example create mode 100644 dbSer/redis/env.cfg.example create mode 100644 domain-admin/env.cfg.example create mode 100644 drawnix/env.cfg.example create mode 100644 dufs/env.cfg.example create mode 100644 etc/docker/daemon.jsonc create mode 100644 flame/env.cfg.example create mode 100644 gitea/env.cfg.example create mode 100644 goofish/.env.example create mode 100644 grafana/env.cfg.example create mode 100644 haproxy/env.cfg.example create mode 100644 hindsight/backup.job create mode 100644 hindsight/env.cfg.example create mode 100644 hindsight/readme.md create mode 100644 hindsight/stack.yml create mode 100644 honcho/create-multi-keys.sh create mode 100644 honcho/env.cfg.example create mode 100644 honcho/readme.md create mode 100644 honcho/share-multi-client.md create mode 100644 honcho/stack.yml create mode 100644 hub-registry/env.cfg.example create mode 100644 it-tools/env.cfg.example create mode 100644 it-tools/readme.md create mode 100644 joplin/amd.env.cfg.example create mode 100644 joplin/env.cfg.example create mode 100644 memos/db-lkc.cnf create mode 100644 memos/db-local.cnf create mode 100644 memos/env.cfg.example create mode 100644 mynat/env.cfg.example create mode 100644 n8n/env.cfg.example create mode 100644 netdata/env.cfg.example create mode 100644 nginxpulse/env.cfg.example create mode 100755 nginxpulse/mkdir.sh create mode 100644 nginxpulse/stack.yml create mode 100644 ntfy/env.cfg.example create mode 100644 portainer-ce/env.cfg.example create mode 100644 rustfs/env.cfg.example create mode 100644 searxng/env.cfg.example create mode 100644 shell/proxy-glm5_2.sh create mode 100644 shell/proxy.ps1 create mode 100644 shell/proxy.sh create mode 100644 tasks/env.cfg.example create mode 100644 tasks/stack.yml create mode 100644 traefik/env.cfg.example create mode 100644 user-config/lsd/config.yaml create mode 100644 user-config/lsd/ colors.yaml create mode 100644 victoriametrics/env.cfg.example create mode 100644 webout/env.cfg.example diff --git a/$user/lsd/config.yaml b/$user/lsd/config.yaml new file mode 100644 index 0000000..f7ec6f1 --- /dev/null +++ b/$user/lsd/config.yaml @@ -0,0 +1,73 @@ +# ========== 经典模式 ========== +# 如果为 true,不使用任何颜色或图标,与标准 ls 行为类似 +classic: false + +# ========== 分块(Blocks) ========== +# 定义每行显示哪些信息块,按顺序排列 +blocks: + - permission # 文件权限 (rwxr-xr-x) + - user # 文件所有者 + - group # 用户组 + - size # 文件大小 + - date # 日期/时间 + - name # 文件名(必须包含) + +# ========== 颜色主题 ========== +color: + # 何时使用颜色:always(总是)、auto(自动)、never(从不) + when: auto + + # 自定义文件类型颜色(覆盖默认值) + theme: custom + +# ========== 日期格式 ========== +date: "+%Y-%m-%d %H:%M:%S" # 可选:relative(相对时间)、iso(ISO格式) + +# ========== 跟随符号链接 ============ +dereference: false + +# ========== 图标 ========== +icons: + # 何时显示图标:always、auto、never + when: auto + + # 图标主题(需要对应的 Nerd Font) + theme: fancy # 或 unicode + + # 分隔符(图标与文件名之间的字符) + separator: " " + +# ========== 忽略选项 ========== +ignore-globs: + - "*.bak" # 忽略所有 .bak 文件 + - ".git" # 忽略 .git 目录 + - "__pycache__" # 忽略 Python 缓存 + +# ========== 布局 ========== +layout: grid # grid(网格)| tree(树状)| oneline(单行) + +# ========== 递归深度(--tree 时有效) ========== +recursion: + enabled: false + depth: 3 # 递归显示的最大深度 + +# ========== 排序 ========== +sorting: + column: name # 排序字段:name、size、time、version、extension + # reverse: false # 是否倒序 + # dir-grouping: first # 目录排序:first(靠前)、last(靠后)、none + +# ========== 符号链接 ========== +# 是否显示符号链接的目标路径 +no-symlink: false +symlink-arrow: " ➜ " + +# ========== 总大小 ========== +total-size: false # 是否显示总大小(在目录底部) + +# ========== 截断所有者名 ========== +truncate-owner: + after: 8 # 用户名超过多少字符截断 + +# ========== 超链接 ========== +hyperlink: never # always | auto | never 是否生成终端超链接 diff --git a/$user/lsd/ colors.yaml b/$user/lsd/ colors.yaml new file mode 100644 index 0000000..f9d8a06 --- /dev/null +++ b/$user/lsd/ colors.yaml @@ -0,0 +1,32 @@ +# 文件类型颜色 +file-type: + directory: + foreground: cyan + bold: true + symlink: + foreground: magenta + italic: true + executable: + foreground: green + bold: true + socket: + foreground: red + pipe: + foreground: yellow + block-device: + foreground: red + char-device: + foreground: yellow + +# 文件扩展名颜色(覆盖文件类型颜色) +extensions: + rs: + foreground: white + bold: true + py: + foreground: yellow + js: + foreground: green + md: + foreground: cyan + italic: true diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..db72de2 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,13 @@ +# 强制 LF 行尾(防止 Windows 工具引入 CRLF 导致 bash 报错) +* text=auto eol=lf + +# 显式标记常见脚本/配置类型 +*.sh eol=lf +*.bash eol=lf +*.py eol=lf +*.md eol=lf +*.yml eol=lf +*.yaml eol=lf +*.cfg eol=lf +*.example eol=lf +Dockerfile eol=lf diff --git a/.gitignore b/.gitignore index 0b3e541..fef6676 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,11 @@ # Docker相关 .env +*.env *.env.* +*.env.cfg.* docker-compose.override.yml + # 开发环境 .idea/ .vscode/ @@ -25,8 +28,15 @@ crontab/debug_*.py crontab/test_*.py crontab/test*.py g-b/* -.gitignore mcptime/go.sum mcpTimeServer/go.sum mcp_server_go/config.toml compare_images.py +env.cfg +env.cfg.* +stack.yml.* + +# 例外:env 模板(不视为敏感配置)允许提交 +!**/*.env.example +!**/*.env.cfg.example +!**/env.cfg.example diff --git a/AGENTS.md b/AGENTS.md index cbcb80b..0bb7f1f 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -7,9 +7,9 @@ ``` / ├── stack.yml / compose.yml / .stack.yml / .yml # Docker Compose 文件 - ├── env.cfg # 环境变量(含敏感信息,应 gitignore) - ├── readme.md # 服务说明文档(可选) - └── config/ # 服务配置文件(可选) + ├── env.cfg.example # 环境变量(含敏感信息,应 gitignore) + ├── readme.md # 服务说明文档(可选) + └── config/ # 服务配置文件(可选) ``` 顶层目录按职责划分: @@ -132,6 +132,7 @@ docker compose -p <名称> --env-file ./builder/golang/env.cfg -f ./builder/gola - **国内镜像源**:Dockerfile 和 apt 配置默认使用国内 CDN 镜像(中科大、阿里云、华为),部署在其他地区需修改。 - **Portainer Docker 兼容性**:Portainer CE LTS < 2.36.0 不兼容 Docker >= 29.0.0,需设置 `DOCKER_MIN_API_VERSION=1.24`。详见 `portainer-ce/readme.md`。 - **i2c.py 需要硬件**:OLED 显示脚本需要树莓派 I2C 硬件、`adafruit_ssd1306` 库和中文字体(`fonts-wqy-microhei`)。 +- **shell 脚本禁用 CRLF**:仓库根目录的 `.gitattributes` 已强制 `*.sh` / `*.bash` / `*.py` / `*.md` / `*.yml` / `*.cfg` 等文本 LF 行尾。Windows 工具(IDE agent、记事本、PowerShell)默认写 CRLF,会导致 Linux 上 `'\r': 未找到命令` 和 `function xxx() {` 语法错误。**新建或修改脚本后必须 `file