提交 3529ed8d authored 作者: xiaobai's avatar xiaobai

1

上级 c42a2ab2
...@@ -118,6 +118,15 @@ install_docker() { ...@@ -118,6 +118,15 @@ install_docker() {
fi fi
fi fi
# 定义网络名称和子网
NETWORK_NAME="mall_network"
SUBNET="172.18.0.0/16"
# 检查网络是否已经存在
if ! docker network ls --format "{{.Name}}" | grep -q "^${NETWORK_NAME}$"; then
docker network create --subnet=${SUBNET} ${NETWORK_NAME}
fi
} }
...@@ -258,6 +267,10 @@ uninstall_project() { ...@@ -258,6 +267,10 @@ uninstall_project() {
echo_content "green" "正在卸载项目..." echo_content "green" "正在卸载项目..."
cd $production_install_dir cd $production_install_dir
docker-compose down docker-compose down
cd $production_mysql_dir
docker-compose down
docker network rm mall_network
rm -rf "$install_dir" # 删除项目目录 rm -rf "$install_dir" # 删除项目目录
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
echo_content "green" "项目已成功卸载。" echo_content "green" "项目已成功卸载。"
...@@ -276,7 +289,7 @@ uninstall_project() { ...@@ -276,7 +289,7 @@ uninstall_project() {
start_project() { start_project() {
cd "$production_install_dir" || exit 1 cd "$production_install_dir" || exit 1
echo_content "green" "是否要启动/重启项目?(y/n):" echo_content "green" "是否要启动/重启 项目?(y/n):"
read -r restart read -r restart
if [ "$restart" = "y" ]; then if [ "$restart" = "y" ]; then
if docker-compose ps | grep -q "Up"; then if docker-compose ps | grep -q "Up"; then
...@@ -288,6 +301,22 @@ start_project() { ...@@ -288,6 +301,22 @@ start_project() {
} }
start_mysql() {
cd "$production_mysql_dir" || exit 1
echo_content "green" "是否要启动/重启 mysql?(y/n):"
read -r restart
if [ "$restart" = "y" ]; then
if docker-compose ps | grep -q "Up"; then
docker-compose restart
else
docker-compose up -d
fi
fi
}
...@@ -330,41 +359,39 @@ select_operation() { ...@@ -330,41 +359,39 @@ select_operation() {
echo_content "yellow" "请选择要执行的操作:" echo_content "yellow" "请选择要执行的操作:"
PS3="请输入操作对应的数字:" PS3="请输入操作对应的数字:"
select operation in "更新项目" "启动/重启" "卸载" "退出"; do select operation in "更新项目" "Mysql(启动/重启)" "商城(启动/重启)" "卸载" "退出"; do
case $REPLY in case $REPLY in
1) 1)
echo_content "green" "你选择了操作: 更新项目" echo_content "green" "你选择了操作: 更新项目"
select_project
start_project
break break
;; ;;
2) 2)
echo_content "green" "你选择了操作: 启动/重启" echo_content "green" "你选择了操作: Mysql(启动/重启)"
start_mysql
break break
;; ;;
3) 3)
echo_content "green" "你选择了操作: 卸载项目" echo_content "green" "你选择了操作: 商城(启动/重启)"
start_project
break break
;; ;;
4) 4)
echo_content "green" "你选择了操作: 卸载"
uninstall_project
exit
;;
5)
echo_content "green" "你选择了操作: 退出" echo_content "green" "你选择了操作: 退出"
exit exit
;; ;;
*) *)
echo_content "red" "无效的选择,请输入 1 2 。" echo_content "red" "无效的选择"
continue continue
;; ;;
esac esac
done done
if [ "$operation" == "更新项目" ]; then
select_project
start_project
elif [ "$operation" == "启动/重启" ] ; then
start_project
elif [ "$operation" == "卸载" ] ; then
uninstall_project # 卸载
else
echo_content "red" "无效的操作。"
fi
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论