苏州企业网站制作服务,河北关键词排名推广,网站建设书籍,郑州建设厅官方网站关于Spug
Spug#xff1a;麻雀#xff0c;麻雀虽小#xff0c;五脏俱全。
Spug是面向中小型企业设计的轻量级无Agent的自动化运维平台#xff0c;整合了主机管理、主机批量执行、主机在线终端、文件在线上传下载、应用发布部署、在线任务计划、配置中心、监控、报警等一系…关于Spug
Spug麻雀麻雀虽小五脏俱全。
Spug是面向中小型企业设计的轻量级无Agent的自动化运维平台整合了主机管理、主机批量执行、主机在线终端、文件在线上传下载、应用发布部署、在线任务计划、配置中心、监控、报警等一系列功能。
Spug是上海时巴克科技有限公司旗下的开源运维项目公司旗下现有产品「Spug开源运维平台」「Spug推送助手」公司专注为中小企业服务。
产品特性 批量执行 主机命令在线批量执行 在线终端 轻量级跳板机浏览器在线终端管理 文件管理 主机文件在线上传下载 任务计划 灵活的在线任务计划 发布部署 多种发布模式轻松搞定CICD 配置中心 抹平不同环境的代码差异 监控中心 支持网站、端口、进程、自定义监控 报警中心 支持微信、邮件、钉钉、飞书等报警方式 轻量级 无 Agent 设计部署方便快捷 基于SSH协议无需部署客户端。可直接进行主机管理、应用部署、监控等功能。 美观易用 使用Ant Design创造高效愉悦的使用体验 基于 Ant Design 设计深入每个细节追求用户交互体验帮助用户决策、减少操作从而节约用户脑力和体力让人机交互行为更自然。 完全开源 前后端完全开源采用 AGPLv3 许可 在遵循开源许可的前提下前后端代码完全开源方便进行二次开发打造属于自己的运维自动化平台。
安装
version: 3.3
services:db:image: mariadb:10.8.2container_name: spug-dbrestart: alwayscommand: --port 3306 --character-set-serverutf8mb4 --collation-serverutf8mb4_unicode_civolumes:- ./data/mysql:/var/lib/mysqlports:- 3306:3306environment:- MYSQL_DATABASEspug- MYSQL_USERspug- MYSQL_PASSWORDspug.cc- MYSQL_ROOT_PASSWORDspug.ccspug:image: openspug/spug-servicecontainer_name: spugprivileged: truerestart: alwaysvolumes:- ./data/service:/data/spug- ./data/repos:/data/repos- ./data/tools:/data/toolsports:- 80:80environment:- MYSQL_DATABASEspug- MYSQL_USERspug- MYSQL_PASSWORDspug.cc- MYSQL_HOSTdb- MYSQL_PORT3306depends_on:- db执行命令
docker-compose up -d配置管理员账户
以下操作会创建一个用户名为 admin 密码为 spug.dev 的管理员账户可自行替换管理员账户/密码。
docker exec spug init_spug admin CQNxiv5hCBQy3JzyfodW飞书机器人
https://open.feishu.cn/open-apis/bot/v2/hook/171397a3-3c04-4777-adf9-9c4f78a81a38java 部署示例
https://spug.cc/blog/example-java/配置容器打包环境jdk maven
# 自行至 https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 下载jdk# 进入容器
docker exec -it spug /bin/bash# 后端部分
# 安装jdk
tar xf /data/tools/jdk-8u371-linux-x64.tar.gz -C /opt
tar xf /data/tools/jdk-11.0.16.1_linux-x64_bin.tar.gz -C /opt# 安装maven
tar xf /data/tools/apache-maven-3.9.3-bin.tar.gz -C /opt# 重启或切换默认环境-配置jdk和maven
# echo -e export JAVA_HOME/opt/jdk1.8.0_371\nexport PATH$PATH:$JAVA_HOME/bin:/opt/apache-maven-3.9.3/bin /etc/profile.d/java.sh
echo export JAVA_HOME/opt/jdk1.8.0_371 /etc/profile.d/java.sh
echo export PATH$PATH:$JAVA_HOME/bin:/opt/apache-maven-3.9.3/bin /etc/profile.d/maven.sh# 临时切换环境
export JAVA_HOME/opt/jdk1.8.0_371
export JAVA_HOME/opt/jdk-11.0.16.1# 配置阿里云镜像加速下载和仓库路径
cd /home/devops/spug/data/tools/maven/conf
docker cp settings.xml spug:/opt/apache-maven-3.9.3/conf/settings.xml## [上面步骤已做]
设置 localRepository
localRepository/tools/maven/repo/localRepository
设置仓库在160-165行mirrors\标签内添加以下内容
vi /opt/apache-maven-3.9.3/conf/settings.xmlmirroridaliyunmaven/idmirrorOf*/mirrorOfname阿里云公共仓库/nameurlhttps://maven.aliyun.com/repository/public/url/mirror## 安装gradle
参考https://blog.csdn.net/itScholar001/article/details/130962619
unzip -d /opt /data/tools/gradle-7.2-all.zip# 配置gradle
echo -e export GRADLE_HOME/opt/gradle-7.2 PATH$PATH:$GRADLE_HOME/bin /etc/profile.d/gradle.sh# 前端部分
# 安装 node(npm)需要多版本低版本与高版本切换使用
下载https://nodejs.org/dist/v12.22.9/node-v12.22.9-linux-x64.tar.xz
下载https://nodejs.org/dist/v14.21.3/node-v14.21.3-linux-x64.tar.xztar xf /data/tools/node-v10.24.1-linux-x64.tar.xz -C /opt
tar xf /data/tools/node-v12.22.9-linux-x64.tar.xz -C /opt
tar xf /data/tools/node-v14.21.3-linux-x64.tar.xz -C /opt# 重启切换默认环境
echo export PATH$PATH:/opt/node-v14.21.3-linux-x64/bin /etc/profile.d/node.sh
# 临时切换环境
# export PATH/opt/node-v10.24.1-linux-x64/bin:$PATH
# export PATH/opt/node-v12.22.9-linux-x64/bin:$PATH
# export PATH/opt/node-v14.21.3-linux-x64/bin:$PATH# npm设置淘宝镜像源
npm config set registry http://registry.npm.taobao.org
npm get registry# 安装yarn推荐使用yarn来代替npm
source /root/.bashrc
npm install -g yarn# 废弃-未使用-安装git部分前端项目里引用了git框架导致。。。还得保证拉下来的代码结构需要带上.git文件夹的
https://www.cnblogs.com/Jim2023/p/17092937.html
tar xf /data/tools/git-2.36.1.tar.gz
cd git-2.36.1
./configure --prefix/usr/local/git # 配置git安装路径
make make install # 编译安装
环境变量配置
echo -e export GIT_PATH/usr/local/git/bin PATH$PATH:$GIT_PATH /etc/profile.d/git.sh# 废弃-未使用-安装python部分前端项目里引用了一些框架导致。。。
https://blog.51cto.com/u_16213461/7183021
tar xf Python-3.11.3.tgz# 退出并重启容器
source /etc/profile
exit
docker restart spug应用部署
示例管理工具_后端
代码准备项目xml增加jar包名与$SPUG_APP_KEY保持一致
finalNamevuln_manager_api/finalName示例buildfinalNamevuln_manager_api/finalNamepluginsplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactId/plugin/plugins/build1、基本配置
配置Git地址暂时使用 root 账号不会出现权限不够的状况密码出现 需要用 %40 替换
http://root:Luoan%4070610.92.60.21:1188/luoan-tool/vuln-manager/vuln-manager-api.git飞书通知https://open.feishu.cn/open-apis/bot/v2/hook/171397a3-3c04-4777-adf9-9c4f78a81a382、构建配置
文件过滤规则包含
jar包名字示例$SPUG_APP_KEY.jar
代码检出前执行
代码检出后执行
mvn clean package -Dmaven.test.skiptrue
cp target/$SPUG_APP_KEY.jar .3、发布配置
部署路径
/home/vuln-manager/data/app
存储路径
/home/devops/repos/$SPUG_APP_KEY
版本数量6
应用发布前执行应用发布后执行
cd /home/vuln-manager
docker-compose stop $SPUG_APP_KEY
docker-compose rm -f $SPUG_APP_KEY
docker-compose up -d $SPUG_APP_KEY
sleep 3
docker-compose ps示例管理工具_前端
1、基本配置
配置Git地址暂时使用 root 账号不会出现权限不够的状况密码出现 需要用 %40 替换
http://root:Luoan%4070610.92.60.21:1188/luoan-tool/vuln-manager/vuln-manager-ui.git飞书通知https://open.feishu.cn/open-apis/bot/v2/hook/171397a3-3c04-4777-adf9-9c4f78a81a382、构建配置
文件过滤规则包含
dist代码检出前执行
# 创建公共node_modules目录
mkdir -p $SPUG_REPOS_DIR/$SPUG_DEPLOY_ID/node_modules代码检出后执行
$SPUG_REPOS_DIR/$SPUG_DEPLOY_ID实际路径/home/devops/spug/data/repos/2 转到快捷方式临时目录/home/devops/spug/data/repos/2_20230802xxxx# 创建软链接指向公共的node_modules避免每次发布重复安装依赖包
ln -s $SPUG_REPOS_DIR/$SPUG_DEPLOY_ID/node_modules .# 安装项目依赖
yarn install# 构建(--modeproduction 为特定项目用)
yarn run build --modeproduction3、发布配置
部署路径
/home/vuln-manager/data/html
存储路径
/home/devops/repos/$SPUG_APP_KEY
版本数量6
应用发布前执行应用发布后执行
cd /home/vuln-manager
docker-compose stop $SPUG_APP_KEY
docker-compose rm -f $SPUG_APP_KEY
docker-compose up -d $SPUG_APP_KEY
sleep 3
docker-compose psSpug 页面
http://127.0.0.1
admin
CQNxiv5hCBQy3JzyfodW遇到的问题
## 登录提示-IP校验问题
在内网部署暂时关闭了系统管理 / 系统设置 / 安全设置 / 访问IP校验
https://spug.cc/docs/practice/## 部署阶段-前端
package.json文件
build: vue-tsc --noEmit vite build,
换成了
build: vite build,## 查看环境变量
echo 查看环境变量$SPUG_REPOS_DIR/$SPUG_DEPLOY_ID/$SPUG_APP_KEY
查看环境变量/data/repos/1/vuln_manager_api## 部署阶段-后端打包报错
https://support.qq.com/products/406892/post/168431102010000097/