forked from DevOps/deploy.stack
Merge branch 'main' of 6t7.net:cnphpbb/deploy.stack
This commit is contained in:
@@ -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 是否生成终端超链接
|
||||
@@ -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
|
||||
@@ -0,0 +1,3 @@
|
||||
IMAGE_TAG_VER=5.4.2
|
||||
IMAGE_TAG=adminer:${IMAGE_TAG_VER}
|
||||
Volumes_Path=/data/volumes/adminer
|
||||
@@ -0,0 +1 @@
|
||||
IMAGE_TAG=hub.tp229.com:3500/ansible-alpine:py3.13-rootless
|
||||
@@ -0,0 +1,2 @@
|
||||
Cadvisor_Tag_Ver=v0.53.0
|
||||
Cadvisor_Image=hub.6t7.net/base/cadvisor:${Cadvisor_Tag_Ver}
|
||||
@@ -0,0 +1 @@
|
||||
IMAGE_TAG=alpine:3
|
||||
@@ -0,0 +1 @@
|
||||
IMAGE_TAG=debian:13
|
||||
@@ -0,0 +1,3 @@
|
||||
IMAGE_TAG_BASH=golang:1.25.0-trixie
|
||||
IMAGE_TAG_ASH=golang:1.25.0-alpine
|
||||
Volumes_Path=/data/volumes
|
||||
@@ -8,8 +8,9 @@
|
||||
# $EDITOR env.cfg # 填入真实密码/密钥后保存
|
||||
# docker compose -p golang --env-file ./env.cfg -f ./stack.yml up -d
|
||||
#
|
||||
IMAGE_TAG_BASH=golang:1.25.0-trixie
|
||||
|
||||
IMAGE_TAG_ASH=golang:1.25.0-alpine
|
||||
IMAGE_TAG_BASH=golang:1.25-trixie
|
||||
|
||||
IMAGE_TAG_ASH=golang:1.25-alpine
|
||||
|
||||
Volumes_Path=/data/volumes
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
IMAGE_TAG_BASH=node:22.18.0-bookworm
|
||||
IMAGE_TAG_ASH=node:22.18.0-alpine
|
||||
Volumes_Path=/data/volumes
|
||||
@@ -17,13 +17,13 @@
|
||||
|
||||
#IMAGE_TAG=postgres:15.6-bookworm
|
||||
|
||||
IMAGE_TAG=postgres:16.10
|
||||
IMAGE_TAG=postgres:16.14
|
||||
|
||||
IMAGE_TAG_V17=postgres:17.6
|
||||
IMAGE_TAG_V17=postgres:17.10
|
||||
|
||||
IMAGE_TAG_V18=postgres:18.0
|
||||
IMAGE_TAG_V18=postgres:18.4
|
||||
|
||||
IMAGE_TAG_V15=postgres:15.14
|
||||
IMAGE_TAG_V15=postgres:15.18
|
||||
|
||||
POSTGRES_PASSWORD=<your-strong-password>
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
# $EDITOR env.cfg # 填入真实密码/密钥后保存
|
||||
# docker compose -p domain-admin --env-file ./env.cfg -f ./stack.yml up -d
|
||||
#
|
||||
IMAGE_TAG_VER=v1.6.73
|
||||
IMAGE_TAG_VER=v1.6.78
|
||||
|
||||
IMAGE_TAG=mouday/domain-admin:${IMAGE_TAG_VER}
|
||||
|
||||
|
||||
@@ -8,6 +8,6 @@
|
||||
# $EDITOR env.cfg # 填入真实密码/密钥后保存
|
||||
# docker compose -p drawnix --env-file ./env.cfg -f ./stack.yml up -d
|
||||
#
|
||||
IMAGE_TAG_VER=v0.3.0
|
||||
IMAGE_TAG_VER=v0.4.1
|
||||
|
||||
IMAGE_TAG=pubuzhixing/drawnix:${IMAGE_TAG_VER}
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
IMAGE_TAG_VER=12.2.0
|
||||
IMAGE_TAG=grafana/grafana:${IMAGE_TAG_VER}
|
||||
@@ -8,6 +8,6 @@
|
||||
# $EDITOR env.cfg # 填入真实密码/密钥后保存
|
||||
# docker compose -p grafana --env-file ./env.cfg -f ./stack.yml up -d
|
||||
#
|
||||
IMAGE_TAG_VER=12.2.0
|
||||
IMAGE_TAG_VER=13.0.2
|
||||
|
||||
IMAGE_TAG=grafana/grafana:${IMAGE_TAG_VER}
|
||||
|
||||
+68
-3
@@ -1,4 +1,69 @@
|
||||
## Grafana
|
||||
# Grafana 部署说明
|
||||
|
||||
image: grafana/grafana:12.2.0
|
||||
ports: 3000
|
||||
[Grafana](https://grafana.com/) 是一个开源的可观测性平台,支持 Prometheus、InfluxDB、Loki、Elasticsearch 等多种数据源,提供丰富的仪表盘和告警能力,适用于基础设施监控、应用性能分析和日志可视化等场景。
|
||||
|
||||
## 目录结构
|
||||
|
||||
| 文件 | 说明 |
|
||||
|------|------|
|
||||
| `compose.yml` | Docker Compose 部署配置 |
|
||||
| `env.cfg` | 环境变量(镜像版本) |
|
||||
| `env.cfg.example` | 环境变量模板(不含敏感信息) |
|
||||
|
||||
## 部署命令
|
||||
|
||||
```bash
|
||||
# 拉取镜像
|
||||
docker compose -p grafana --env-file ./grafana/env.cfg -f ./grafana/compose.yml pull
|
||||
|
||||
# 启动服务
|
||||
docker compose -p grafana --env-file ./grafana/env.cfg -f ./grafana/compose.yml up -d
|
||||
|
||||
# 停止服务
|
||||
docker compose -p grafana --env-file ./grafana/env.cfg -f ./grafana/compose.yml down
|
||||
|
||||
# 查看日志
|
||||
docker compose -p grafana --env-file ./grafana/env.cfg -f ./grafana/compose.yml logs -f
|
||||
```
|
||||
|
||||
## 环境变量说明
|
||||
|
||||
| 变量 | 说明 | 示例 |
|
||||
|------|------|------|
|
||||
| `IMAGE_TAG_VER` | Grafana 镜像版本 | `13.0.2` |
|
||||
| `IMAGE_TAG` | 完整镜像标签 | `grafana/grafana:13.0.2` |
|
||||
|
||||
## 访问服务
|
||||
|
||||
- 默认端口:`3000`
|
||||
- 访问地址:`http://<主机IP>:3000`
|
||||
- 默认登录凭据:`admin / admin`(首次登录后建议修改密码)
|
||||
|
||||
## 持久化
|
||||
|
||||
当前配置使用无状态模式,容器重启后仪表盘和配置会丢失。如需持久化,建议在 `compose.yml` 中添加卷挂载:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
grafana:
|
||||
volumes:
|
||||
- ${Volumes_Path:-/data/volumes/grafana}:/var/lib/grafana # 数据持久化
|
||||
```
|
||||
|
||||
并确保宿主机目录权限正确:
|
||||
|
||||
```bash
|
||||
# 创建数据目录
|
||||
mkdir -pv /data/volumes/grafana
|
||||
|
||||
# 设置目录属主为 Grafana 容器用户(UID 472)
|
||||
chown -R 472:472 /data/volumes/grafana
|
||||
```
|
||||
|
||||
## 注意事项
|
||||
|
||||
- Grafana 和 Gitea 默认都使用 3000 端口,部署在同一宿主机时需通过 `env.cfg` 或 compose 调整端口映射避免冲突
|
||||
- 容器使用 `restart: unless-stopped` 策略,宿主机重启后自动拉起
|
||||
- 默认使用匿名用户访问,如需接入 LDAP/OAuth 等认证,需挂载自定义 `grafana.ini` 配置文件
|
||||
- 生产环境建议配置数据源和告警渠道的持久化存储
|
||||
- 当前 `env.cfg.example` 版本为 `13.0.2`,实际部署版本以 `env.cfg` 为准
|
||||
@@ -0,0 +1,10 @@
|
||||
IMAGE_TAG=joplin/server:3.6.1
|
||||
# only amd64
|
||||
#IMAGE_TAG=joplin/server:2.14.2-beta
|
||||
## 实际部署时需要考虑APP_BASE_URL变量值
|
||||
APP_BASE_URL=https://joplin.6t7.net
|
||||
POSTGRES_USER=postgres
|
||||
POSTGRES_PASSWORD=Kevin0412PgSql
|
||||
POSTGRES_DATABASE=joplin-db
|
||||
POSTGRES_PORT=5432
|
||||
POSTGRES_HOST=10.0.74.3
|
||||
@@ -0,0 +1,6 @@
|
||||
DB_DRIVER=postgres
|
||||
DB_USER=postgres
|
||||
DB_PASSWORD=Kevin0412PgSql
|
||||
DB_DATANAME=memos-db
|
||||
DB_HOST=192.168.100.184
|
||||
DB_POST=5432
|
||||
@@ -0,0 +1,6 @@
|
||||
DB_DRIVER=postgres
|
||||
DB_USER=postgres
|
||||
DB_PASSWORD=Kevin0412PgSql
|
||||
DB_DATANAME=memos-db
|
||||
DB_HOST=192.168.10.61
|
||||
DB_POST=5432
|
||||
@@ -0,0 +1,7 @@
|
||||
DB_DRIVER=postgres
|
||||
DB_USER=postgres
|
||||
DB_PASSWORD=Kevin0412PgSql
|
||||
DB_DATANAME=memos-db
|
||||
#DB_HOST=192.168.100.184
|
||||
DB_HOST=10.0.74.3
|
||||
DB_POST=5432
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
IMAGE_TAG_LATEST=2.3.6
|
||||
IMAGE_TAG_Pre=2.4.4
|
||||
|
||||
# 数据库连接配置
|
||||
POSTGRES_HOST=localhost
|
||||
POSTGRES_PORT=5432
|
||||
POSTGRES_DB=n8n
|
||||
POSTGRES_USER=n8n
|
||||
POSTGRES_PASSWORD=n8n_password
|
||||
|
||||
# n8n基础配置
|
||||
N8N_BASIC_AUTH_ACTIVE=true
|
||||
N8N_BASIC_AUTH_USER=admin
|
||||
N8N_BASIC_AUTH_PASSWORD=admin_password
|
||||
|
||||
# 时区
|
||||
GENERIC_TIMEZONE=Asia/Shanghai
|
||||
TZ=Asia/Shanghai
|
||||
|
||||
# Webhook配置
|
||||
WEBHOOK_URL=http://localhost:5678
|
||||
|
||||
# 加密密钥
|
||||
N8N_ENCRYPTION_KEY=your_encryption_key_here
|
||||
@@ -2,12 +2,10 @@ networks:
|
||||
nightingale:
|
||||
driver: bridge
|
||||
|
||||
|
||||
services:
|
||||
|
||||
redis:
|
||||
image: "redis:8-alpine"
|
||||
container_name: redis
|
||||
container_name: n9e_redis
|
||||
hostname: redis
|
||||
restart: always
|
||||
ports:
|
||||
@@ -18,7 +16,7 @@ services:
|
||||
- nightingale
|
||||
|
||||
nightingale:
|
||||
image: flashcatcloud/nightingale:8.5.0
|
||||
image: flashcatcloud/nightingale:9.0.0-beta.3
|
||||
container_name: nightingale
|
||||
hostname: nightingale
|
||||
restart: always
|
||||
|
||||
+13
-1
@@ -10,8 +10,20 @@
|
||||
#
|
||||
|
||||
|
||||
IMAGE_TAG_VER=v2.15
|
||||
IMAGE_TAG_VER=v2.24
|
||||
|
||||
IMAGE_TAG=binwiederhier/ntfy:${IMAGE_TAG_VER}
|
||||
|
||||
Volumes_Path=/data/volumes/ntfy
|
||||
|
||||
NTFY_BASE_URL=http://ntfy:80
|
||||
|
||||
# Web推送密钥对(自行生成):
|
||||
# docker run --rm binwiederhier/ntfy ntfy web push generate > keys.txt
|
||||
# 或:docker exec ntfy ntfy web push generate
|
||||
# 然后将 public key 和 private key 分别填入下方
|
||||
NTFY_WEB_PUSH_PUBLIC_KEY=
|
||||
NTFY_WEB_PUSH_PRIVATE_KEY=
|
||||
|
||||
# Web推送关联的邮件地址(用于通知等场景)
|
||||
NTFY_WEB_PUSH_EMAIL_ADDRESS=
|
||||
|
||||
+6
-7
@@ -9,24 +9,23 @@ services:
|
||||
container_name: ntfy
|
||||
#tty: true
|
||||
stdin_open: true
|
||||
command:
|
||||
serve
|
||||
command: serve
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- '5480:80'
|
||||
- "5480:80"
|
||||
environment:
|
||||
- TZ=Asia/Shanghai # 时区设置为上海时区
|
||||
- NTFY_BASE_URL=<http://ntfy:80> # ntfy服务的基础访问URL(协议+主机+端口)
|
||||
- NTFY_BASE_URL=${NTFY_BASE_URL} # ntfy服务的基础访问URL(协议+主机+端口)
|
||||
- NTFY_CACHE_FILE=/var/lib/ntfy/cache.db # 缓存数据的存储文件路径
|
||||
- NTFY_AUTH_FILE=/var/lib/ntfy/auth.db # 授权信息(如用户认证数据)的存储文件路径
|
||||
- NTFY_AUTH_DEFAULT_ACCESS=deny-all # 默认访问权限:禁止所有未授权访问
|
||||
- NTFY_BEHIND_PROXY=true # 标识ntfy服务运行在代理服务器后方(如Nginx等)
|
||||
- NTFY_ATTACHMENT_CACHE_DIR=/var/lib/ntfy/attachments # 附件资源的缓存存储目录
|
||||
- NTFY_ENABLE_LOGIN=true # 启用登录功能,允许用户通过账号密码授权访问
|
||||
- NTFY_WEB_PUSH_PUBLIC_KEY= <public_key> # Web推送功能的公钥(用于消息加密)
|
||||
- NTFY_WEB_PUSH_PRIVATE_KEY= <private_key> # Web推送功能的私钥(与公钥配对,用于解密/签名)
|
||||
- NTFY_WEB_PUSH_PUBLIC_KEY=${NTFY_WEB_PUSH_PUBLIC_KEY} # Web推送功能的公钥(用于消息加密)
|
||||
- NTFY_WEB_PUSH_PRIVATE_KEY=${NTFY_WEB_PUSH_PRIVATE_KEY} # Web推送功能的私钥(与公钥配对,用于解密/签名)
|
||||
- NTFY_WEB_PUSH_FILE=/var/lib/ntfy/webpush.db # Web推送相关的数据存储文件路径
|
||||
- NTFY_WEB_PUSH_EMAIL_ADDRESS= <email> # Web推送关联的邮件地址(用于通知等场景)
|
||||
- NTFY_WEB_PUSH_EMAIL_ADDRESS=${NTFY_WEB_PUSH_EMAIL_ADDRESS} # Web推送关联的邮件地址(用于通知等场景)
|
||||
- NTFY_ENABLE_SIGNUP=false # 禁用用户注册功能,阻止新用户自主创建账号
|
||||
- NTFY_ENABLE_METRICS=true # 启用指标收集功能,用于监控和分析服务运行状态
|
||||
volumes:
|
||||
|
||||
@@ -7,3 +7,133 @@
|
||||
> 1. 该脚本只是一个简单的示例,不保证任何的稳定性。
|
||||
> 2. 请根据自己的需求进行修改。
|
||||
|
||||
## 项目结构
|
||||
|
||||
项目包含多个可独立部署的服务栈,每个服务栈位于单独的目录中,包含以下核心文件:
|
||||
- `stack.yml` / `compose.yml` - Docker Compose 配置文件
|
||||
- `env.cfg` - 环境变量配置文件(包含敏感信息,已 gitignore)
|
||||
- `env.cfg.example` - 环境变量配置模板(不含敏感信息)
|
||||
- `readme.md` - 服务说明文档(可选)
|
||||
|
||||
## 使用示例
|
||||
|
||||
### Gitea 部署实践事例
|
||||
|
||||
**场景**:要部署 Gitea 服务,但希望保持项目目录的原始配置不变,同时在独立的目录中进行定制化部署。
|
||||
|
||||
**1. 创建独立部署目录**:
|
||||
```bash
|
||||
# 假设当前在 deploy.stack 项目根目录
|
||||
# 创建独立的部署目录
|
||||
mkdir -p ~/mydeploy
|
||||
cd ~/mydeploy
|
||||
|
||||
# 复制项目中的 Gitea 配置(相对路径或绝对路径)
|
||||
cp -r ../deploy.stack/gitea .
|
||||
# 或者使用绝对路径
|
||||
# cp -r /path/to/your/deploy.stack/gitea .
|
||||
|
||||
# 进入 Gitea 目录
|
||||
cd gitea
|
||||
```
|
||||
|
||||
**2. 准备环境变量**:
|
||||
```bash
|
||||
# 复制环境变量模板
|
||||
cp env.cfg.example env.cfg
|
||||
|
||||
# 编辑环境变量(根据实际需求修改)
|
||||
vim env.cfg
|
||||
```
|
||||
|
||||
**3. 修改配置(在 mydeploy 目录中)**:
|
||||
|
||||
**修改端口映射**(Gitea 默认使用 3000 端口,可能与 Grafana 冲突):
|
||||
```yaml
|
||||
# 在 lky-prod.yml 或 rpi-prod.yml 中添加端口映射
|
||||
ports:
|
||||
- "3001:3000" # 将容器内 3000 端口映射到宿主机 3001 端口
|
||||
```
|
||||
|
||||
**调整数据卷路径**(根据实际存储位置):
|
||||
```bash
|
||||
# 在 env.cfg 中修改 Volumes_Path
|
||||
Volumes_Path=/data/volumes/gitea
|
||||
```
|
||||
|
||||
**更新镜像版本**:
|
||||
```bash
|
||||
# 在 env.cfg 中修改镜像版本
|
||||
IMAGE_TAG_VER=1.25.2
|
||||
IMAGE_TAG=gitea/gitea:${IMAGE_TAG_VER}-rootless
|
||||
```
|
||||
|
||||
**选择环境配置文件**:
|
||||
- `lky-prod.yml` - 用于生产环境(Linux 服务器)
|
||||
- `rpi-prod.yml` - 用于树莓派环境
|
||||
- 根据实际环境选择合适的 compose 文件
|
||||
|
||||
**4. 创建数据目录**:
|
||||
```bash
|
||||
# 根据 env.cfg 中的 Volumes_Path 创建目录
|
||||
mkdir -pv /data/volumes/gitea/{data,config,logs}
|
||||
|
||||
# 设置正确的权限(Gitea 使用 UID 1000)
|
||||
chown -R 1000:1000 /data/volumes/gitea/
|
||||
```
|
||||
|
||||
**5. 部署服务**:
|
||||
```bash
|
||||
# 拉取镜像(根据选择的配置文件)
|
||||
docker compose -p gitea --env-file ./env.cfg -f ./lky-prod.yml pull
|
||||
# 或使用 rpi-prod.yml
|
||||
# docker compose -p gitea --env-file ./env.cfg -f ./rpi-prod.yml pull
|
||||
|
||||
# 启动服务
|
||||
docker compose -p gitea --env-file ./env.cfg -f ./lky-prod.yml up -d
|
||||
|
||||
# 查看日志
|
||||
docker compose -p gitea --env-file ./env.cfg -f ./lky-prod.yml logs -f
|
||||
|
||||
# 查看服务状态
|
||||
docker compose -p gitea --env-file ./env.cfg -f ./lky-prod.yml ps
|
||||
|
||||
# 停止服务
|
||||
docker compose -p gitea --env-file ./env.cfg -f ./lky-prod.yml down
|
||||
```
|
||||
|
||||
**6. 优势**:
|
||||
- **配置隔离**:在 `mydeploy` 目录中的修改不会影响原始项目配置
|
||||
- **版本管理**:可以针对不同环境维护不同的配置版本
|
||||
- **快速回滚**:如需恢复原始配置,只需删除 `mydeploy` 目录并重新部署
|
||||
- **测试验证**:可以在 `mydeploy` 中测试新配置,确认无误后再应用到生产环境
|
||||
|
||||
**7. 注意事项**:
|
||||
- **配置兼容性**:确保 `mydeploy` 目录中的配置文件与原始项目保持兼容,特别是 compose 文件版本
|
||||
- **定期同步**:关注原始项目的更新(安全补丁、新功能等),适时同步到 `mydeploy` 目录
|
||||
- **配置备份**:定期备份 `mydeploy` 目录中的自定义配置
|
||||
- **敏感信息安全**:`env.cfg` 包含密码、密钥等敏感信息,确保文件权限为 600
|
||||
```bash
|
||||
chmod 600 env.cfg
|
||||
```
|
||||
- **版本控制**:建议将 `mydeploy` 目录纳入版本控制(排除 `env.cfg`)
|
||||
- **多环境管理**:可以为不同环境创建不同的 `mydeploy` 目录,如 `mydeploy-prod`、`mydeploy-dev`
|
||||
|
||||
**8. 通用模式**:
|
||||
这种 "mydeploy" 模式不仅适用于 Gitea,也适用于项目中的其他服务:
|
||||
|
||||
```bash
|
||||
# 部署 Grafana
|
||||
cp -r ../deploy.stack/grafana ~/mydeploy/grafana
|
||||
|
||||
# 部署 Memos
|
||||
cp -r ../deploy.stack/memos ~/mydeploy/memos
|
||||
|
||||
# 部署 Portainer
|
||||
cp -r ../deploy.stack/portainer-ce ~/mydeploy/portainer-ce
|
||||
|
||||
# 部署 Traefik
|
||||
cp -r ../deploy.stack/traefik ~/mydeploy/traefik
|
||||
```
|
||||
|
||||
每个服务都可以在独立的目录中进行定制化配置和测试,实现真正的配置隔离和环境管理。
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
# RUN:: docker compose -p prod-dbs --env-file ./victoriametrics/env.cfg -f ./victoriametrics/compose.yml up -d
|
||||
|
||||
services:
|
||||
victoriametrics:
|
||||
|
||||
Reference in New Issue
Block a user