极简版 Shell 脚本部署 Docker MySQL(root/root)
CI/CD 的英文全称及核心含义如下采用结构化方式呈现便于你在技术文档或配置中规范使用缩写部分英文全称中文翻译核心作用CIContinuous Integration持续集成开发人员频繁将代码合并到主干通过自动化构建和测试快速发现集成错误。CDContinuous Delivery持续交付在 CI 基础上将代码自动部署到测试/预发布环境手动确认后发布到生产。CDContinuous Deployment持续部署持续交付的进阶版代码通过测试后自动部署到生产环境无需人工干预。补充说明在你的 Jenkins 部署场景中当前实现的是CI持续集成CD持续交付的结合CI通过mvn clean package完成代码构建与打包。CD通过脚本自动将前后端文件部署到服务器但未实现生产环境的全自动发布仍需触发 Jenkins 任务。极简版 Shell 脚本部署 Docker MySQLroot/root以下脚本仅保留核心功能部署 MySQL 容器、设置 root 密码为root无额外自定义配置开箱即用适配 Rocky Linux/CentOS 系统。一、完整脚本保存为deploy-mysql-simple.sh#!/bin/bashset-e# 错误立即退出# 核心配置仅需改这里MYSQL_VERSION8.0# MySQL版本CONTAINER_NAMEmysql-ivos# 容器名MYSQL_PORT3306# 映射端口MYSQL_ROOT_PWDroot# root密码固定为rootMYSQL_DATA_DIR/opt/mysql/data# 数据持久化目录# 1. 检查Docker未安装则自动装echo-e\n 1/4 检查Docker环境 if!command-vdocker/dev/null;thenechoDocker未安装开始自动安装...sudodnf remove-ydocker*/dev/nullsudodnfinstall-yyum-utils device-mapper-persistent-data lvm2/dev/nullsudoyum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo/dev/nullsudodnfinstall-ydocker-ce docker-ce-cli containerd.io/dev/nullsudosystemctl startdockersudosystemctlenabledockerecho✅ Docker安装完成elseecho✅ Docker已安装$(docker--version|awk{print $3}|cut-d,-f1)fi# 2. 清理旧容器避免冲突echo-e\n 2/4 清理旧容器 if[$(dockerps-a|grep-c$CONTAINER_NAME)-gt0];thensudodockerstop$CONTAINER_NAME/dev/nullsudodockerrm$CONTAINER_NAME/dev/nullecho✅ 旧容器$CONTAINER_NAME已删除elseecho✅ 无旧容器无需清理fi# 3. 准备数据目录拉取镜像 echo-e\n 3/4 准备部署环境 # 创建数据目录持久化关键sudomkdir-p$MYSQL_DATA_DIRsudochmod-R777$MYSQL_DATA_DIR# 拉取MySQL镜像if[$(dockerimages|grep-cmysql:$MYSQL_VERSION)-eq0];thenecho拉取MySQL$MYSQL_VERSION镜像...sudodockerpull mysql:$MYSQL_VERSIONfiecho✅ 环境准备完成# 4. 启动MySQL容器 echo-e\n 4/4 启动MySQL容器 sudodockerrun-d\--name$CONTAINER_NAME\--restartalways\-p$MYSQL_PORT:3306\-v$MYSQL_DATA_DIR:/var/lib/mysql\-eMYSQL_ROOT_PASSWORD$MYSQL_ROOT_PWD\mysql:$MYSQL_VERSION# 等待启动避免校验过早失败sleep8# 验证启动状态if[$(dockerps|grep-c$CONTAINER_NAME)-gt0];thenecho-e\n MySQL部署成功echo 连接信息主机端口$MYSQL_PORT| 用户名root | 密码rootecho 数据目录$MYSQL_DATA_DIRelseecho-e\n❌ MySQL启动失败日志sudodockerlogs$CONTAINER_NAMEexit1fi二、使用步骤一键执行# 1. 创建并编辑脚本vimdeploy-mysql-simple.sh# 2. 添加执行权限chmodx deploy-mysql-simple.sh# 3. 运行脚本sudo避免权限问题sudo./deploy-mysql-simple.sh三、快速验证连接# 进入容器内连接MySQLsudodockerexec-itmysql-ivos mysql-uroot-proot# 验证成功会进入MySQL命令行输入以下命令测试show databases;# 能看到默认数据库即表示正常exit;# 退出MySQL总结核心配置仅保留 root 密码root无额外数据库/用户配置满足基础使用需求。关键保障数据目录/opt/mysql/data持久化容器删除/重启数据不丢失容器开机自启。简化点去掉字符集配置、自定义用户等非必需项仅保留最核心的部署逻辑。如果需要开放 3306 端口供远程连接如本地 Navicat 访问执行以下命令sudofirewall-cmd --add-port3306/tcp--permanentsudofirewall-cmd--reload

相关新闻

Qwen3-32B二次元垂直优化:漫画脸描述生成对‘傲娇’‘病娇’‘天然呆’人格标签精准建模

Qwen3-32B二次元垂直优化:漫画脸描述生成对‘傲娇’‘病娇’‘天然呆’人格标签精准建模

Qwen3-32B二次元垂直优化:漫画脸描述生成对‘傲娇’‘病娇’‘天然呆’人格标签精准建模 1. 引言:当AI遇见二次元角色设计 你有没有遇到过这样的情况:脑子里有一个完美的二次元角色形象,却不知道怎么用文字描述出来?…

2026/7/4 22:42:17 阅读更多 →
零成本解决Windows/Office激活难题:开源激活工具全攻略

零成本解决Windows/Office激活难题:开源激活工具全攻略

零成本解决Windows/Office激活难题:开源激活工具全攻略 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 激活Windows系统和Office办公套件时,你是否遇到过命令行操作复杂、…

2026/5/17 10:54:51 阅读更多 →
英雄联盟智能工具:如何让你的游戏体验提升300%?

英雄联盟智能工具:如何让你的游戏体验提升300%?

英雄联盟智能工具:如何让你的游戏体验提升300%? 【免费下载链接】League-Toolkit 兴趣使然的、简单易用的英雄联盟工具集。支持战绩查询、自动秒选等功能。基于 LCU API。 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit ⚡️ 价值…

2026/7/4 12:20:50 阅读更多 →

最新新闻

AntiDupl终极指南:三步快速清理重复照片,释放磁盘空间

AntiDupl终极指南:三步快速清理重复照片,释放磁盘空间

AntiDupl终极指南:三步快速清理重复照片,释放磁盘空间 【免费下载链接】AntiDupl A program to search similar and defect pictures on the disk 项目地址: https://gitcode.com/gh_mirrors/an/AntiDupl AntiDupl是一款专业的开源图片去重工具&a…

2026/7/4 22:42:44 阅读更多 →
基于STM32和MAX9744的高效D类音频放大器设计

基于STM32和MAX9744的高效D类音频放大器设计

1. 项目背景与核心器件选型在音频系统设计中,功率放大环节直接决定了最终的声音表现。传统AB类放大器虽然音质优秀,但效率普遍低于50%,导致发热严重、能耗高。而D类放大器采用PWM调制技术,理论效率可达90%以上,特别适合…

2026/7/4 22:40:42 阅读更多 →
Java毕设选题推荐:景观设计作品展示与项目管理系统的设计与实现 基于 SpringBoot 的园林素材资源管理系统【附源码、mysql、文档、调试+代码讲解+全bao等】

Java毕设选题推荐:景观设计作品展示与项目管理系统的设计与实现 基于 SpringBoot 的园林素材资源管理系统【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/4 22:38:41 阅读更多 →
Halcon图像滤波实战:均值、中值与高斯滤波的噪声抑制与边缘保护权衡

Halcon图像滤波实战:均值、中值与高斯滤波的噪声抑制与边缘保护权衡

1. 工业视觉中的图像噪声挑战在工业视觉检测项目中,图像噪声就像不请自来的"第三者",总是干扰着我们对产品缺陷的准确判断。我处理过一个典型的案例:某汽车零部件生产线需要检测金属表面的微小划痕,但采集到的图像总是布…

2026/7/4 22:36:38 阅读更多 →
如何安全绕过iOS 15-16激活锁?applera1n工具实战指南

如何安全绕过iOS 15-16激活锁?applera1n工具实战指南

如何安全绕过iOS 15-16激活锁?applera1n工具实战指南 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 你是否曾购买二手iPhone却发现设备被原主人的Apple ID锁定?或者忘记了Appl…

2026/7/4 22:32:36 阅读更多 →
Python+CNN疲劳检测系统设计与实现

Python+CNN疲劳检测系统设计与实现

1. 项目概述这个基于Python和CNN的疲劳识别系统是一个典型的计算机视觉应用项目,特别适合作为计算机相关专业的毕业设计选题。系统通过摄像头捕捉人脸图像,利用卷积神经网络(CNN)模型实时分析眼部特征,判断用户是否处于疲劳状态。作为一名在计…

2026/7/4 22:32:36 阅读更多 →

日新闻

Memcached 1.6.43 发布:关键安全修复版本,多项问题得到解决

Memcached 1.6.43 发布:关键安全修复版本,多项问题得到解决

Memcached 1.6.43 正式发布,这是一个关键的安全修复版本,修复了多个方面的问题,还对部分功能进行了优化。 安全修复亮点 此次发布在安全修复上表现突出。binprot 避免了项目引用计数溢出,mcmc 因安全问题提升了上游版本号&#xf…

2026/7/4 0:04:29 阅读更多 →
终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案

终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案

终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案 【免费下载链接】HMCL A Minecraft Launcher which is multi-functional, cross-platform and popular 项目地址: https://gitcode.com/gh_mirrors/hm/HMCL HMCL(Hello Minecraft! Lau…

2026/7/4 0:06:29 阅读更多 →
KMX63与PIC18F66K40在嵌入式HMI中的硬件协同与低功耗设计

KMX63与PIC18F66K40在嵌入式HMI中的硬件协同与低功耗设计

1. KMX63与PIC18F66K40的硬件协同架构解析KMX63作为一款三轴加速度计和磁力计组合传感器,与PIC18F66K40微控制器的搭配堪称嵌入式HMI开发的黄金组合。这套硬件组合的核心优势在于KMX63提供的高精度运动感知能力与PIC18F66K40强大的信号处理能力形成了完美互补。KMX6…

2026/7/4 0:06:29 阅读更多 →

周新闻

月新闻