docs: 变更配置文件路径,优化描述信息

This commit is contained in:
2023-08-25 15:09:26 +08:00
parent 89e4ec5d1c
commit b77a8533a0
+31 -23
View File
@@ -14,9 +14,8 @@
* 镜像地址:
- 阿里云: registry.cn-shenzhen.aliyuncs.com/colovu/nginx:1.20
- DockerHubcolovu/nginx:1.20
- Colovu Registry: docker.colovu.com/colovu/nginx:1.20
- 依赖镜像:colovu/debian:11
- 依赖镜像:colovu/debian:12
> 后续相关命令行默认使用`[Colovu Registry](https://docker.colovu.com)`镜像服务器做说明
@@ -29,10 +28,10 @@ Docker 快速启动命令:
$ docker run -d -p 80:8080 docker.colovu.com/colovu/nginx:1.20
```
- `docker.colovu.com/colovu/imgname:<TAG>`:镜像名称及版本标签 TAG;标签不指定时默认使用最新版本
启动后,可以使用浏览器访问:`http://localhost/`,出现默认的 Nginx 首页。
Docker-Compose 快速启动命令:
```shell
@@ -60,10 +59,11 @@ $ docker-compose up -d
镜像默认提供以下数据卷定义,默认数据分别存储在自动生成的应用名对应`nginx`子目录中:
```shell
/srv/conf # nginx 配置文件
/srv/data # 站点源文件
/var/log # 日志文件
/var/run # 进程运行PID文件
/srv/nginx/conf # 配置文件
/srv/nginx/data # 数据文件,主要存放应用数据
/srv/nginx/cert # 证书文件存放目录
/srv/nginx/log # 日志文件
/var/run/nginx # 进程运行PID文件
```
如果需要持久化存储相应数据,需要**在宿主机建立本地目录**,并在使用镜像初始化容器时进行映射。宿主机相关的目录中如果不存在对应应用`nginx`的子目录或相应数据文件,则容器会在初始化时创建相应目录及文件。
@@ -78,34 +78,41 @@ $ docker run -d -e "APP_ENV_KEY_NAME=key_value" docker.colovu.com/colovu/nginx:1
### 自动变量替换
针对配置文件中的配置项,支持环境变量名自动替换,该类环境变量定义规则为:`APP_CFG_*=<val>`
针对应用配置文件中的配置项,支持环境变量名自动替换生成,该类环境变量需要使用统一前缀,定义规则为:`APP_CFG_*=<val>`
- `APP_CFG_`:环境变量自动替换标识,具备该前缀的环境变量会被自动处理并更新至配置文件
- `*`:配置文件中对应的配置项名,大小写需要符合实际参数名要求;特殊字符需要符合`特殊字符替换规则`
- `<val>`:配置项对应值
**特殊字符替换规则**
因为 Shell 变量只能以字母、数字和下划线组成,针对'xml'、'ini'等配置文件中使用的'.'、'-'等特殊字符,需要进行重定义及转换。预定义如下:
+ `_` ==> `_` : 应用配置属性中的`_`(下划线),与环境变量相同
+ `__` ==> `.` : 应用配置属性中的`.`(半角点),在环境变量中由`__`(双下划线)表示
+ `___` ==> `-` : 应用配置属性中的`-`(中划线),在环境变量中由`___`(三下划线)表示
例如:
```shell
# 设置配置文件中配置项 max_wal_size,传入容器的变量为(两者都可以):
APP_CFG_max_wal_size=400MB
# 常用于`key-value`类型的配置
APP_CFG_min_wal_size=100MB
APP_CFG_max_wal_size="400MB"
# 容器启动后,应用配置文件中对应配置项生效,且设置为相应值:
min_wal_size = '100MB'
max_wal_size = '400MB'
# 常用于`xml`类型的配置
APP_CFG_fs__defaultFS=hdfs://namenode:8020
APP_CFG_yarn__log___aggregation___enable=true
# 容器启动后,应用配置文件中对应配置项生效,且设置为相应值:
<property><name>fs.defaultFS</name><value>hdfs://namenode:8020</value></property>
<property><name>yarn.log-aggregation-enable</name><value>true</value></property>
```
**特殊字符替换规则**
- 针对使用`xml`格式的配置文件
+ `_` ==> `.` : 环境变量中的`下划线`会被转义为设置属性中的`半角点`
+ `__` ==> `_` : 环境变量中的`双下划线`会被转义为设置属性中的`单下划线`
+ `___` ==> `-` : 环境变量中的`三下划线`会被转义为设置属性中的`中划线`
- 针对使用`key-val`格式的配置文件
+ `_` ==> `_` : 环境变量中的`下划线`不会被替换
+ `__` ==> `.` : 环境变量中的`双下划线`会被转义为设置属性中的`半角点`
+ `___` ==> `-` : 环境变量中的`三下划线`会被转义为设置属性中的`中划线`
### 常规配置参数
常规配置参数用来配置容器基本属性,一般情况下需要设置,主要包括:
@@ -116,7 +123,8 @@ max_wal_size = '400MB'
如果没有必要,可选配置参数可以不用定义,直接使用对应的默认值,主要包括:
- `ENV_DEBUG`:默认值:**false**。设置是否输出容器调试信息。可选值:no、true、yes
- `ENV_DEBUG`:默认值:**false**。设置是否输出容器调试信息。可选值:false、no、true、yes
- `ALLOW_ANONYMOUS`:默认值:**no**。设置是否允许匿名链接。可选值:false、no、true、yes
### 集群配置参数