linux 运维
企业内协作工作平台搭建
用到的工具与平台
Cockpit web端的机器管理,除了监控机器运行状态还可以管理docker镜像,最重要是带有web终端工具
dzzoffice 一个开源的办公平台,带有网盘功能和其他各类可安装的插件、支持在线文档编辑和预览,支持任务版(类似trello)
sonarqube 代码质量管理平台
cockpit 安装
官网:https://cockpit-project.org
使用默认配置安装非常简单,以centos为例:https://cockpit-project.org/running.html#centos
安装后访问地址:https://ip-address-of-machine:9090
详细配置:https://cockpit-project.org/guide/latest/
dzzoffice安装
官网:http://www.dzzoffice.com
dzzoffice是一个php的web项目,使用mysql存储。php的环境部署较为麻烦,这里我制作了docker版的 参考:https://github.com/othorizon/Dockerfiles/blob/master/dzzoffice/install.md 安装步骤
支持office在线预览与编辑 office文档编辑预览方案 - DzzOffice dzzoffice支持多种office的预览与编辑方式,可以在dzz的应用商店安装,如果你的服务器是内部的无法被外网的office预览api访问你的文件,那么就只能安装自己的office预览服务了。
文档预览服务也有很多选择,这里以dzz支持的onlyoffice为例,使用docker安装
docker run --name onlyoffice -itd -p 9011:80 dzzoffice/onlyofficedocker run --name onlyoffice -itd -p 9011:80 onlyoffice/documentserver
然后在dzz中的onlyoffice应用中配置serverUrl地址就好了:http://[可访问的外部ip]:9011/web-apps/apps/api/documents/api.js
要注意的就是这里的ip地址必须是你的本地浏览器客户端可以访问到的ip,而不是服务器内部地址
2022-03-23 更新,网上的安装版本
sonarqube安装
官网:https://www.sonarqube.org 官网-文档:https://docs.sonarqube.org/latest 官网-插件文档:https://docs.sonarqube.org/display/PLUG
sonar有很多版本,也提供了免费的社区办(Community Edition),官方提供了下载版的安装和docker般的,以docker为例 docker版官网:https://hub.docker.com/_/sonarqube/
soanr的使用
登录后创建一个项目,会提示如何操作。 示例
支持单元测试覆盖率 采用jacoco的插件,参考:https://docs.sonarqube.org/display/PLUG/Usage+of+JaCoCo+with+SonarJava
在执行分析之前,先执行jacoco的插件 mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Dmaven.test.failure.ignore=false
然后在执行分析就好了
其他私有云平台
nextcloud
Ansible
Ansible的安装和全面介绍 - 直到世界的尽头 - CSDN博客
web console 网页终端工具
Cockpit Admin Console
https://cockpit-project.org/
web端的shell终端工具,不仅是shell终端,而且带有丰富的运维功能,容器管理等等
rtty
rtty由服务端和客户端两部分 服务端: https://github.com/zhaojh329/rttys 客户端: https://github.com/zhaojh329/rtty
服务端可以通过网页访问,会有客户端列表页面,来统一管理和登录客户端。
代码/程序 相关
数据库版本管理,表结构变化管理
Liquibase: Flyway对比Liquibase - WillPan1234的博客 - CSDN博客
flyway
SpringBoot系列: 使用 flyway 管理数据库版本 - harrychinese - 博客园
通过在数据库中创建一张表来维护sql文件的版本。 支持多实例部署,flyway使用数据库锁机制来协调多个节点的情况,从而保证可以集群部署。 flyway 不好理解的参数:
参考: Flyway学习笔记
简易灰度部署项目脚本 不使用jenkins的纯shell方式
代码性能调优工具 监控 xrebel
xrebel通过配置javaagent实现,对代码无侵入,支持web console XRebel
java代码诊断工具/代码debug工具 Arthas
Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。 Arthas支持web console。 alibaba/arthas Arthas 用户文档 — Arthas 3.1.1 文档
athas技巧
Alibaba Arthas实践--获取到Spring Context,然后为所欲为 · Issue #482 · alibaba/arthas
maven项目增加编译版本号
maven/buildnumber-maven-plugin
可视化辅助工具
ES
kibanna 只能绑定一个es
ElasticHD 查询很难用 不推荐 360EntSecGroup-Skylar/ElasticHD
elasticsearch-head 查询很难用 不推荐 es可视化web端,输入es的http地址既可以连接,相比笨重的kibana可以随意切换es源 mobz/elasticsearch-head ElasticSearch Head
Redis
redis web可视化工具,支持docker erikdubbelboer/phpRedisAdmin
Last updated