【Microi吾码】开源低代码平台-Microi吾码-一键安装使用(CentOS一键安装MySql+Redis+MinIO+MongoDB+Watchtower脚本)
📕作者简介:热爱跑步的恒川,致力于C/C++、Java、Python等多编程语言,热爱跑步,喜爱音乐、摄影的一位博主。
📗本文收录于Microi吾码系列专栏,大家有兴趣的可以看一看
📘相关专栏C语言初阶、C语言进阶系列、恒川的日常汇报系列等,大家有兴趣的可以看一看
📙Python零基础入门系列,Java入门篇系列、docker技术篇系列、Apollo的学习录系列正在发展中,喜欢Python、Java、docker的朋友们可以关注一下
开源低代码平台-Microi吾码
Microi吾码是一个开源的低代码平台,旨在通过简化应用程序开发过程,帮助开发者和非开发者快速创建和部署应用。低代码平台通过可视化界面、拖拽操作、预设模板等方式,降低了编程的复杂度,让用户能够以更少的编码工作完成应用开发。
前言
有小伙伴提出他并不想在本地编译代码、打包镜像、上传镜像、安装服务器环境、安装docker容器等一系列繁琐的操作,见文章【开源低代码平台-Microi吾码-Docker部署】
因此博主编写了一键安装【mysql+redis+minio+mongodb+watchtower+低代码平台程序】脚本
CentOS7一键安装脚本
url=https://static.itdos.com/install/install-microi-centos.sh;if [ -f /usr/bin/curl ];then curl -sSO $url;else wget -O install-microi-centos.sh $url;fi;bash install-microi-centos.sh
注意事项:
执行上面脚本时,会提示【输入 g 以公网IP安装,输入 n 以内网IP安装】,请根据实际情况输入g或n如果服务器没有docker环境,也会提示是否按y安装,虽然博主建议使用1Panel、宝塔之类的面板工具来管理服务器并安装docker,但如果您想快速开始就直接键入y吧安装成功后,必需开放microi-api端口、前端传统界面端口、前端Web操作系统端口、MinIO端口脚本安装mysql默认为4G内存服务器的性能配置,2G内存服务器建议下载脚本去掉性能配置再运行脚本重复执行一键脚本前会提示先删除所有已安装容器,这将导致所有数据丢失:
docker ps -a --format"{ {.Names}}"| grep "^microi-install-"| xargs -r docker rm -f 安装成功预览图

安装过程图

安装结果docker

脚本代码【有点东西:)】
目前更新于2024-11-24 11:47,后续可能会经常更新
#!/bin/bash echo 'Microi:当前一键脚本版本:2024-11-24 11:47'# 获取局域网IP LAN_IP=$(hostname -I | awk '{print $1}') echo 'Microi:获取局域网IP: '$LAN_IP # 获取公网IP PUBLIC_IP=$(curl -s ifconfig.me) echo 'Microi:获取公网IP: '$PUBLIC_IP # 询问用户安装类型 echo 'Microi:您是想在公网访问系统还是内网访问?公网请提前做好端口开放。' echo 'Microi:输入 g 以公网IP安装,输入 n 以内网IP安装:' read -r install_type if["$install_type"=="g"]; then ACCESS_IP=$PUBLIC_IP echo 'Microi:将以公网IP安装。'elif["$install_type"=="n"]; then ACCESS_IP=$LAN_IP echo 'Microi:将以内网IP安装。'else echo 'Microi:无效的输入,脚本退出。' exit 1 fi # 检查Docker是否安装if ! [-x "$(command -v docker)"]; then echo 'Microi:您未安装docker,推荐使用1Panel、宝塔等面板工具来安装docker并管理您的服务器!' echo 'Microi:是否立即安装Docker?(y/n)' read -r answer if["$answer"!="y"]; then echo 'Microi:安装取消,脚本退出。' exit 1 fi # 安装Docker echo 'Microi:开始安装Docker...' sudo yum update -y sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io sudo systemctl start docker sudo systemctl enable docker echo 'Microi:Docker已成功安装。' fi # 配置Docker镜像加速器(现在太难找了,如果报错timeout就去阿里云申请一个自己私有的加速地址) DOCKER_ACCELERATOR="https://mirrors.aliyun.com/docker-ce/" echo 'Microi:配置Docker镜像加速器' sudo tee /etc/docker/daemon.json <<EOF { "registry-mirrors":["${DOCKER_ACCELERATOR}"]} EOF sudo systemctl daemon-reload sudo systemctl restart docker # 生成随机端口和密码函数 echo 'Microi:生成随机端口和密码函数' generate_random_port(){ shuf -i 17777-65535-n 1} generate_random_password(){ openssl rand -base64 12| tr -dc 'A-Za-z0-9'| head -c16 }# 生成随机数据目录 generate_random_data_dir(){ local container_name="$1" local dir="/home/data-${container_name}-$(openssl rand -hex 4)" mkdir -p "${dir}" echo "${dir}"}# 检查并提示用户手动删除已有容器 echo 'Microi:检查并提示用户手动删除已有容器'if docker ps -a --format'{ {.Names}}'| grep -q '^microi-install-'; then echo 'Microi:脚本重复运行前,需要先通过命令【docker ps -a --format "{ {.Names}}" | grep "^microi-install-" | xargs -r docker rm -f】删除所有相关容器后再重新运行,注意此操作将会删除数据库、MinIO文件,请谨慎操作' exit 1 fi # 检查并安装unzipif ! [-x "$(command -v unzip)"]; then echo 'Microi:您未安装unzip,正在为您安装...' sudo yum install -y unzip if[ $? -ne 0]; then echo 'Microi:unzip安装失败,脚本退出。' exit 1 fi echo 'Microi:unzip已成功安装。'else echo 'Microi:unzip已安装。' fi # 创建 MySQL 配置文件 MYSQL_CONF_FILE="/tmp/my_microi.cnf" echo '[mysqld]'> ${ MYSQL_CONF_FILE} echo 'lower_case_table_names = 1'>> ${ MYSQL_CONF_FILE} echo 'max_connections = 500'>> ${ MYSQL_CONF_FILE} echo 'key_buffer_size = 268435456'>> ${ MYSQL_CONF_FILE} echo 'query_cache_size = 268435456'