#!/bin/bash # Ver: 1.7 by Endial Fang (endial@126.com) # # 应用启动脚本;组合默认的配置参数及容器启动时传入的 CMD 参数,启动应用 # 设置 shell 执行参数,可使用'-'(打开)'+'(关闭)控制。常用: # -e: 命令执行错误则报错(errexit); -u: 变量未定义则报错(nounset); -x: 打印实际待执行的命令行; -o pipefail: 设置管道中命令遇到失败则报错 set -euo pipefail . /colovu/lib/liblog.sh # 日志输出函数库 . /usr/local/bin/environment.sh # 设置环境变量 LOG_I "** Processing run.sh **" readonly START_COMMAND="$(command -v ${APP_EXEC:-${APP_NAME}})" # 配置默认启动参数(应用配置文件、前台方式启动) flags=() [[ -n "${PGDATA:-}" ]] && flags+=("-D" "${PGDATA}") [[ -n "${PG_CONF_FILE:-}" ]] && flags+=("--config-file=${PG_CONF_FILE}") [[ -n "${APP_EXTRA_FLAGS:-}" ]] && flags+=("${APP_EXTRA_FLAGS[@]}") flags+=("$@") LOG_I "Start ${APP_NAME} with command: ${START_COMMAND} ${flags[@]}" exec "${START_COMMAND}" "${flags[@]}"