----添加部署脚本和文档
This commit is contained in:
142
宝策/docker_kkfileview.sh
Normal file
142
宝策/docker_kkfileview.sh
Normal file
@ -0,0 +1,142 @@
|
||||
#!/bin/bash
|
||||
|
||||
# KKFileView容器名称
|
||||
CONTAINER_NAME="kkfileview"
|
||||
# KKFileView版本
|
||||
KK_VERSION="4.4.0"
|
||||
# 映射端口(主机:容器)
|
||||
PORT="8012"
|
||||
# 数据存储路径
|
||||
CONF_PATH="/docker-data/kkfileview/conf"
|
||||
|
||||
# 镜像地址
|
||||
IMAGE="docker.tanuki.vip/kkfileview:${KK_VERSION}"
|
||||
|
||||
# 创建目录并设置权限函数
|
||||
create_dirs() {
|
||||
# 创建数据目录并设置权限
|
||||
if [ ! -d "$CONF_PATH" ]; then
|
||||
mkdir -p "$CONF_PATH"
|
||||
echo "创建数据目录: $CONF_PATH"
|
||||
chmod -R 777 "$CONF_PATH"
|
||||
echo "设置数据目录权限: $CONF_PATH"
|
||||
fi
|
||||
}
|
||||
|
||||
# 部署KKFileView
|
||||
deploy() {
|
||||
if [ "$(docker ps -q -f name=$CONTAINER_NAME)" ]; then
|
||||
echo "KKFileView容器 $CONTAINER_NAME 已存在并运行中"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
|
||||
echo "发现已停止的KKFileView容器,正在启动..."
|
||||
docker start $CONTAINER_NAME
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo "开始部署KKFileView容器..."
|
||||
create_dirs
|
||||
docker run -d --restart always --name $CONTAINER_NAME\
|
||||
-p $PORT:8012 \
|
||||
-v $CONF_PATH/application.properties:/opt/kkFileView-4.4.0/config/application.properties \
|
||||
$IMAGE
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "KKFileView容器部署成功!"
|
||||
echo "容器名称: $CONTAINER_NAME"
|
||||
echo "映射端口: $PORT"
|
||||
else
|
||||
echo "KKFileView容器部署失败!"
|
||||
fi
|
||||
}
|
||||
|
||||
# 查看日志
|
||||
logs() {
|
||||
if [ ! "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
|
||||
echo "KKFileView容器 $CONTAINER_NAME 不存在"
|
||||
return 1
|
||||
fi
|
||||
|
||||
echo "查看KKFileView容器日志 (按Ctrl+C退出)..."
|
||||
docker logs -f --tail 200 $CONTAINER_NAME
|
||||
}
|
||||
|
||||
# 重启容器
|
||||
restart() {
|
||||
if [ ! "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
|
||||
echo "KKFileView容器 $CONTAINER_NAME 不存在"
|
||||
return 1
|
||||
fi
|
||||
|
||||
echo "正在重启KKFileView容器..."
|
||||
docker restart $CONTAINER_NAME
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "KKFileView容器重启成功!"
|
||||
else
|
||||
echo "KKFileView容器重启失败!"
|
||||
fi
|
||||
}
|
||||
|
||||
# 删除容器
|
||||
remove() {
|
||||
if [ ! "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
|
||||
echo "KKFileView容器 $CONTAINER_NAME 不存在"
|
||||
return 1
|
||||
fi
|
||||
|
||||
echo "警告:此操作将删除KKFileView容器"
|
||||
read -p "确定要删除吗?(y/n) " confirm
|
||||
if [ "$confirm" != "y" ] && [ "$confirm" != "Y" ]; then
|
||||
echo "取消删除操作"
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo "正在停止并删除KKFileView容器..."
|
||||
docker stop $CONTAINER_NAME
|
||||
docker rm $CONTAINER_NAME
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "KKFileView容器删除成功!"
|
||||
else
|
||||
echo "KKFileView容器删除失败!"
|
||||
fi
|
||||
}
|
||||
|
||||
# 显示帮助
|
||||
show_help() {
|
||||
echo "KKFileView容器管理脚本"
|
||||
echo "用法: $0 [命令]"
|
||||
echo "命令列表:"
|
||||
echo " deploy - 部署并启动KKFileView容器"
|
||||
echo " logs - 查看KKFileView容器日志"
|
||||
echo " restart - 重启KKFileView容器"
|
||||
echo " remove - 删除KKFileView容器"
|
||||
echo " help - 显示帮助信息"
|
||||
}
|
||||
|
||||
# 主逻辑
|
||||
case "$1" in
|
||||
deploy)
|
||||
deploy
|
||||
;;
|
||||
logs)
|
||||
logs
|
||||
;;
|
||||
restart)
|
||||
restart
|
||||
;;
|
||||
remove)
|
||||
remove
|
||||
;;
|
||||
help)
|
||||
show_help
|
||||
;;
|
||||
*)
|
||||
echo "未知命令: $1"
|
||||
show_help
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user