Merge pull request #1080 from QYG2297248353/renovate/ghcr.io-nodebb-nodebb-3.x

Update ghcr.io/nodebb/nodebb Docker tag to v3.12.4
This commit is contained in:
新疆萌森软件开发工作室 2025-01-21 10:11:36 +08:00 committed by GitHub
commit a5add30c47
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 249 additions and 0 deletions

View File

@ -0,0 +1,11 @@
{
"defaults": {
"$NODEBB_DB": {
"host": "$NODEBB_DB_HOST",
"port": $NODEBB_DB_PORT,
"database": "$NODEBB_DB_NAME",
"username": "$NODEBB_DB_USER",
"password": "$NODEBB_DB_PASSWORD"
}
}
}

View File

@ -0,0 +1,98 @@
additionalProperties:
formFields:
- default: "/home/nodebb"
edit: true
envKey: NODEBB_ROOT_PATH
labelZh: 数据持久化路径
labelEn: Data persistence path
required: true
type: text
- default: 4567
edit: true
envKey: PANEL_APP_PORT_HTTP
labelZh: WebUI 端口
labelEn: WebUI port
required: true
rule: paramPort
type: number
- default: "http://127.0.0.1:4567"
edit: true
envKey: NODEBB_URL
labelZh: 服务地址
labelEn: Service address
required: true
type: text
- default: ""
edit: true
envKey: NODEBB_ADMIN_USERNAME
labelZh: 管理员用户名
labelEn: Admin Username
required: true
type: text
- default: ""
edit: true
envKey: NODEBB_ADMIN_PASSWORD
labelZh: 管理员密码
labelEn: Admin Password
required: true
type: password
- default: ""
edit: true
envKey: NODEBB_ADMIN_EMAIL
labelZh: 管理员邮箱
labelEn: Admin Email
required: true
type: text
- default: "postgres"
edit: true
envKey: NODEBB_DB
labelZh: 数据库类型
labelEn: Database type
required: true
type: select
values:
- label: PostgreSQL
value: "postgres"
- label: Redis
value: "redis"
- label: MongoDB
value: "mongo"
- default: "127.0.0.1"
edit: true
envKey: NODEBB_DB_HOST
labelZh: 数据库 主机地址
labelEn: Database Host
required: true
type: text
- default: 5432
edit: true
envKey: NODEBB_DB_PORT
labelZh: 数据库 端口
labelEn: Database Port
required: true
rule: paramPort
type: number
- default: "nodebb"
edit: true
envKey: NODEBB_DB_NAME
labelZh: 数据库 名称
labelEn: Database Name
required: true
rule: paramCommon
type: text
- default: "nodebb"
edit: true
envKey: NODEBB_DB_USER
labelZh: 数据库 用户名
labelEn: Database Username
required: false
type: text
- default: ""
edit: true
envKey: NODEBB_DB_PASSWORD
labelZh: 数据库 密码
labelEn: Database Password
random: true
required: false
rule: paramComplexity
type: password

View File

@ -0,0 +1,26 @@
networks:
1panel-network:
external: true
services:
nodebb:
image: ghcr.io/nodebb/nodebb:3.12.4
container_name: ${CONTAINER_NAME}
labels:
createdBy: "Apps"
restart: always
networks:
- 1panel-network
ports:
- ${PANEL_APP_PORT_HTTP}:4567
env_file:
- ${GLOBAL_ENV_FILE:-/etc/1panel/envs/global.env}
- ${ENV_FILE:-/etc/1panel/envs/default.env}
volumes:
- ${NODEBB_ROOT_PATH}/node_modules:/usr/src/app/node_modules
- ${NODEBB_ROOT_PATH}/build:/usr/src/app/build
- ${NODEBB_ROOT_PATH}/uploads:/usr/src/app/public/uploads
- ${NODEBB_ROOT_PATH}/config:/opt/config
- ${NODEBB_ROOT_PATH}/setup.json:/usr/src/app/setup.json
environment:
- TZ=Asia/Shanghai

View File

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

View File

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

View File

@ -0,0 +1,56 @@
#!/bin/bash
if [ -f .env ]; then
source .env
# setup-1 add default values
CURRENT_DIR=$(pwd)
sed -i '/^ENV_FILE=/d' .env
sed -i '/^GLOBAL_ENV_FILE=/d' .env
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
# setup-2 update dir permissions
mkdir -p "$NODEBB_ROOT_PATH"
mkdir -p "$NODEBB_ROOT_PATH/node_modules"
mkdir -p "$NODEBB_ROOT_PATH/build"
mkdir -p "$NODEBB_ROOT_PATH/uploads"
mkdir -p "$NODEBB_ROOT_PATH/config"
# setup-3 初始化参数配置
if [ -z "$NODEBB_DB_NAME" ]; then
NODEBB_DB_NAME="nodebb"
fi
if [ -z "$NODEBB_DB_USER" ]; then
NODEBB_DB_USER=""
fi
if [ -z "$NODEBB_DB_PASSWORD" ]; then
NODEBB_DB_PASSWORD=""
fi
SETUP_JSON_PATH="$NODEBB_ROOT_PATH/setup.json"
cp ./conf/setup.json "$SETUP_JSON_PATH"
sed -i "
s|\$NODEBB_DB_HOST|$NODEBB_DB_HOST|g;
s|\$NODEBB_DB_PORT|$NODEBB_DB_PORT|g;
s|\$NODEBB_DB_NAME|$NODEBB_DB_NAME|g;
s|\$NODEBB_DB_USER|$NODEBB_DB_USER|g;
s|\$NODEBB_DB_PASSWORD|$NODEBB_DB_PASSWORD|g;
s|\$NODEBB_DB|$NODEBB_DB|g
" "$SETUP_JSON_PATH"
# setup-4 update dir permissions
chown -R 1001:1001 "$NODEBB_ROOT_PATH"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/node_modules"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/build"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/uploads"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/config"
echo "Check Finish."
else
echo "Error: .env file not found."
fi

View File

@ -0,0 +1,10 @@
#!/bin/bash
if [ -f .env ]; then
source .env
echo "Check Finish."
else
echo "Error: .env file not found."
fi

View File

@ -0,0 +1,44 @@
#!/bin/bash
if [ -f .env ]; then
source .env
# setup-1 add default values
CURRENT_DIR=$(pwd)
sed -i '/^ENV_FILE=/d' .env
sed -i '/^GLOBAL_ENV_FILE=/d' .env
echo "ENV_FILE=${CURRENT_DIR}/.env" >> .env
echo "GLOBAL_ENV_FILE=${CURRENT_DIR}/envs/global.env" >> .env
# setup-2 update dir permissions
mkdir -p "$NODEBB_ROOT_PATH"
mkdir -p "$NODEBB_ROOT_PATH/node_modules"
mkdir -p "$NODEBB_ROOT_PATH/build"
mkdir -p "$NODEBB_ROOT_PATH/uploads"
mkdir -p "$NODEBB_ROOT_PATH/config"
if [ ! -f "$NODEBB_ROOT_PATH/setup.json" ]; then
SETUP_JSON_PATH="$NODEBB_ROOT_PATH/setup.json"
cp ./conf/setup.json "$SETUP_JSON_PATH"
sed -i "
s|\$NODEBB_DB_HOST|$NODEBB_DB_HOST|g;
s|\$NODEBB_DB_PORT|$NODEBB_DB_PORT|g;
s|\$NODEBB_DB_NAME|$NODEBB_DB_NAME|g;
s|\$NODEBB_DB_USER|$NODEBB_DB_USER|g;
s|\$NODEBB_DB_PASSWORD|$NODEBB_DB_PASSWORD|g;
s|\$NODEBB_DB|$NODEBB_DB|g
" "$SETUP_JSON_PATH"
fi
# setup-3 update dir permissions
chown -R 1001:1001 "$NODEBB_ROOT_PATH"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/node_modules"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/build"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/uploads"
chown -R 1001:1001 "$NODEBB_ROOT_PATH/config"
echo "Check Finish."
else
echo "Error: .env file not found."
fi