mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-11 16:50:28 +08:00
feat: 增强初始化脚本功能
- 支持只设置WEB密码而保持admin用户名 - 添加视频格式参数设置支持(VIDEOFORMAT) - 新增HTTP/HTTPS端口配置功能 - 修复依赖包管理和视频格式变量名错误
This commit is contained in:
parent
ecc27c2be7
commit
b94cc14e2a
@ -45,6 +45,8 @@ RUN sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.lis
|
||||
libwebsockets17 \
|
||||
libnss3 \
|
||||
libasound2 \
|
||||
libdrm2 \
|
||||
libx264-164 \
|
||||
nano \
|
||||
unzip \
|
||||
&& if [ ${TARGETARCH} != arm64 ]; then \
|
||||
@ -63,7 +65,6 @@ RUN sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.lis
|
||||
libva2 \
|
||||
libva-drm2 \
|
||||
libva-x11-2 \
|
||||
libdrm2 \
|
||||
mesa-va-drivers \
|
||||
mesa-vdpau-drivers \
|
||||
intel-media-va-driver \
|
||||
|
||||
@ -71,6 +71,7 @@ if [ ! -f /etc/kvmd/.init_flag ]; then
|
||||
|
||||
# 设置用户名和密码
|
||||
if [ ! -z "$USERNAME" ] && [ ! -z "$PASSWORD" ]; then
|
||||
# 设置自定义用户名和密码
|
||||
if python -m kvmd.apps.htpasswd del admin \
|
||||
&& echo "$PASSWORD" | python -m kvmd.apps.htpasswd set -i "$USERNAME" \
|
||||
&& echo "$PASSWORD -> $USERNAME:$PASSWORD" > /etc/kvmd/vncpasswd \
|
||||
@ -80,6 +81,16 @@ if [ ! -f /etc/kvmd/.init_flag ]; then
|
||||
log_error "用户凭据设置失败"
|
||||
exit 1
|
||||
fi
|
||||
elif [ ! -z "$PASSWORD" ] && [ -z "$USERNAME" ]; then
|
||||
# 只设置密码,保持admin用户名
|
||||
if echo "$PASSWORD" | python -m kvmd.apps.htpasswd set -i "admin" \
|
||||
&& echo "$PASSWORD -> admin:$PASSWORD" > /etc/kvmd/vncpasswd \
|
||||
&& echo "admin:$PASSWORD -> admin:$PASSWORD" > /etc/kvmd/ipmipasswd; then
|
||||
log_info "admin 用户密码设置成功"
|
||||
else
|
||||
log_error "admin 用户密码设置失败"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
log_warn "未设置 USERNAME 和 PASSWORD 环境变量,使用默认值(admin/admin)"
|
||||
fi
|
||||
@ -210,8 +221,8 @@ EOF
|
||||
fi
|
||||
|
||||
if [ ! -z "$VIDEOFORMAT" ]; then
|
||||
if sed -i "s/format=mjpeg/format=$VIDFORMAT/g" /etc/kvmd/override.yaml; then
|
||||
log_info "视频输入格式已设置为 $VIDFORMAT"
|
||||
if sed -i "s/format=mjpeg/format=$VIDEOFORMAT/g" /etc/kvmd/override.yaml; then
|
||||
log_info "视频输入格式已设置为 $VIDEOFORMAT"
|
||||
fi
|
||||
fi
|
||||
|
||||
@ -221,6 +232,19 @@ EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
# 设置WEB端口
|
||||
if [ ! -z "$HTTPPORT" ]; then
|
||||
if sed -i "s/port: 8080/port: $HTTPPORT/g" /etc/kvmd/override.yaml; then
|
||||
log_info "HTTP 端口已设置为 $HTTPPORT"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$HTTPSPORT" ]; then
|
||||
if sed -i "s/port: 4430/port: $HTTPSPORT/g" /etc/kvmd/override.yaml; then
|
||||
log_info "HTTPS 端口已设置为 $HTTPSPORT"
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
touch /etc/kvmd/.init_flag
|
||||
log_info "初始化配置完成"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user