草率了哈各位,
实际上公司里登录VPN之后拿到下面6个工具的公司内部网址就可以直接登录给你的账号密码使用了,缺什么权限(如gitlab里的项目权限)找相关负责的同事开通就行,完全不需要自己下载配置啥的~
感觉下面最后俩GitHub下载配置麻烦的要死的个人认为是最开始搭建的那个人做的,作为一颗小小螺丝钉,搭建好了我们直接登录使用就好了。。。。。。是我想的太复杂了(lll¬ω¬)
1.vpn-公司内网--我司用的是openvpn
不必多说,公司内网,一般不同公司使用不同软件登录vpn,会给你公钥私钥操作文档啥的,跟着做就行了
2.confluence、jira(结合使用)-文档追踪项目-网页
一句话解释他俩关系:
Confluence和Jira是两款由Atlassian公司开发的工具,Confluence共同文档,Jira追踪项目/事务,常一起使用来增强团队协作和项目管理的效率。
- Confluence是一个专业的企业知识管理与协同软件,也是一个专业的wiki平台。它由Atlassian公司推出,旨在帮助团队实现协作和知识共享。
Confluence的主要功能和特点包括:
- 文档协作:允许团队成员共同编辑文档,支持实时编辑和评论,便于协作和讨论。
- 知识库管理:可以创建和维护知识库,团队成员可以在其中分享和查找文档、模板、常见问题解答等信息,提高知识分享和查询效率3。
- 项目管理:用于追踪项目进展、计划任务和设置提醒,方便团队成员协同工作并保持项目的可见性。
- 团队讨论:提供评论功能,团队成员可以在文档上进行讨论和反馈意见,促进沟通和交流。
- 内容搜索:具有强大的搜索功能,可以快速找到需要的文档和信息3。
Confluence通过空间(Space)的概念来组织和管理文档,每个空间都可以看作是一个独立的wiki区域,用于存储与特定项目或主题相关的文档和信息。团队成员可以根据需要创建不同的空间,并对空间中的文档进行权限管理,以确保信息的安全性和保密性。
此外,Confluence还支持与JIRA等Atlassian产品的无缝集成,方便团队在产品开发和项目管理过程中进行协作和沟通。
总之,Confluence是一个功能强大的企业知识管理与协同软件,可以帮助团队更好地实现信息共享、协作编辑和项目管理等目标。
- JIRA是Atlassian公司出品的一款项目与事务跟踪工具。它被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等多个工作领域。JIRA以其配置灵活、功能全面、部署简单和扩展丰富等特点,成为了许多团队和组织进行项目管理的重要工具。
JIRA的主要功能和特点包括:
- 问题跟踪管理:JIRA可以对问题的整个生命周期进行记录和管理,从问题的创建到解决再到关闭,包括问题类型、问题描述、优先级、指派处理人、当前状态等相关信息。
- 工作流管理:JIRA提供了默认的工作流,但用户也可以根据自己项目的特定需求去自定义工作流。工作流可以指明一个问题从开始到结束可能经历的各个状态和状态之间转换的规则2。
- 项目管理:JIRA能够配置来适应项目从开始、执行到结束的各个阶段。每个项目都有自己的概览页面,包括项目详细信息、最新更新情况以及一些报告的快捷方式。在项目界面中,可以查看按照状态、是否解决等条件设置的分类统计报告,以及项目的最新活动情况和热门问题。
- 自定义和扩展性:JIRA支持自定义问题类型、字段、安全级别等,以满足不同组织的需求。此外,JIRA还提供了丰富的插件和扩展,可以进一步提高其功能和易用性。
- 团队协作:JIRA的界面直观简洁,让工作的焦点一目了然。团队成员可以轻松协作,通过邮件、RSS和聊天工具等方式及时通知和监控项目的活动情况。
JIRA不仅适用于软件开发团队,还广泛应用于IT、营销、运营、财务、人力资源、法务等多种行业和团队。全球有超过65,000家公司在使用JIRA,包括一些大公司如Spotify、Cisco、eBay、Square和Airbnb2。
然而,值得注意的是,JIRA也存在一些缺点,如价格昂贵、停售Server版、项目管理能力有局限性等。因此,在选择项目管理工具时,需要根据团队的实际情况和需求进行综合考虑
3.redmine-项目管理和缺陷跟踪工具-网页Overview - RedmineRedminehttps://www.redmine.org/
4.GitLab-Git仓库管理系统-网页
GitLab是一个开源的Git仓库管理系统,旨在为企业和开发者提供一个安全可靠且易于使用的代码管理平台1。它集成了版本管理、代码审查、问题跟踪等协作功能,并通过易用的Web界面进行操作1。GitLab拥有完善的权限系统,允许管理者对不同的用户和团队设置不同的访问权限、修改权限、下载权限等1。
GitLab的主要特点和功能包括:
版本管理:GitLab使用Git作为代码管理工具,允许用户创建分支、合并代码以及处理冲突,实现代码的版本管理和历史追踪123。
代码审查:GitLab支持代码审查流程,团队成员可以对提交的代码进行评论和讨论,从而确保代码质量124。
项目管理:通过Issue和Merge Request等特性,GitLab帮助团队跟踪进度和管理任务13。
持续集成/持续部署(CI/CD):GitLab CI/CD是其核心功能之一,支持自动化的构建、测试和部署流程,可以自动触发构建、测试和发布任务,有助于加快开发发布周期134。
安全性:GitLab提供遥测、扫描和安全审计功能,有助于发现潜在的安全漏洞4。
自托管与云服务:GitLab可以自行在本地服务器上部署,也可以使用GitLab提供的云服务,提供了灵活性以满足不同组织的需求2。
社区版和企业版:GitLab提供社区版(CE)和企业版(EE),社区版免费开放,而企业版提供了更多的高级功能34。
GitLab由乌克兰程序员Dmitriy Zaporozhets和Valery Sizov于2011年创建,目的是构建企业自托管Git平台,减少对Atlassian(JIRA、Bitbucket、Confluence)产品的依赖4。目前,GitLab在开源社区中非常受欢迎,被广泛应用于软件开发和项目管理领域4。
此外,需要注意的是,GitLab是一个不断发展的平台,其功能和特性可能会随着版本更新而发生变化。因此,在使用GitLab时,建议参考最新的官方文档和社区资源以获取最新信息。
gitlab与github区别
GitLab和GitHub是两个基于Git的在线代码管理平台,它们之间有一些关键的区别,包括所有权、功能性、开源性、部署方式以及费用等方面。以下是详细的比较:
所有权:
- GitHub由微软所有1。
- GitLab是一家独立的公司1,提供自己的Git仓库管理系统2。
功能性:
- GitHub相对更加简单和易用,提供了诸如代码托管、任务管理、Bug跟踪、特性请求等功能1。
- GitLab除了这些功能外,还支持持续集成、持续部署、自动部署和其他DevOps功能1。GitLab提供了完整的DevOps解决方案,包括CI/CD、监控、安全扫描等功能,使团队可以在一个平台上完成整个开发流程3。
开源性:
- GitHub以开源为导向,是全球最大的开源项目托管平台,它鼓励个人和组织分享和协作开源代码,但其自身的源代码不开放1。
- GitLab允许在内部部署,适合企业内部使用,并且它的源代码是开放的1。GitLab是一款自由和免费的开源软件,不需要编写许可证或购买许可证2。
部署方式:
- GitHub是一个基于云的代码托管平台,用户可以将代码存储在GitHub的远程存储库中3。
- GitLab提供了两种部署方式。GitLab.com是官方提供的托管服务,类似于GitHub。另外,GitLab CE(Community Edition)是一个开源项目,用户可以自己部署在本地服务器上,并进行自定义配置和扩展3。这种自托管的部署方式使用户能够更好地控制和保护代码,同时具备更大的定制性和灵活性4。
访问权限和费用:
- GitHub提供免费公开仓库和付费私人仓库1。免费方案适用于公开的开源项目,付费方案则提供了更多的私有存储库、协作和管理功能5。
- GitLab也有免费和付费的版本。免费版本包含基本的代码托管和团队协作功能,而付费版本提供了更高级的功能,如CI/CD集成和高级安全特性15。
社区和生态系统:
- GitHub拥有全球最大的开发者社区,因此用户可以轻松地找到相关项目和贡献者4。许多知名的开源项目都托管在GitHub上,使得GitHub成为开源软件开发的重要平台之一5。
- GitLab的社区规模和生态系统相对较小,但也在不断发展壮大。GitLab社区活跃,并且有大量的开源项目和插件可供使用3。
综上所述,GitLab和GitHub在多个方面存在差异,具体选择哪个平台取决于用户的需求和偏好。对于需要完整的DevOps解决方案、更高的自定义性和灵活性,以及开源项目托管需求的用户,GitLab可能是一个更好的选择。而对于希望与全球开发者社区合作、使用简单的云托管服务以及享受广泛集成工具的用户,GitHub则可能更适合。
5.jenkins-自动化工具-网页
官网:
JenkinsJenkins 是一个开源自动化服务器https://www.jenkins.io/zh/
参考下载配置博客:(不需要,公司会给内部网址)
https://www.cnblogs.com/butingxue/p/14068409.html
Jenkins是一个开源的自动化工具,原名为Hudson,主要用于支持软件开发中的持续集成(Continuous Integration, CI)与持续部署(Continuous Deployment, CD)1。
Jenkins是一个开放源代码软件,任何人都可以查看其源代码、进行修改和贡献,这使得Jenkins能够免费提供,并确保其长期的发展和维护1。
Jenkins的主要功能和特点包括:
自动化构建:Jenkins可以监视源代码仓库的变化,并在代码提交后自动执行构建过程,包括编译、测试和打包等步骤2。
易于集成:Jenkins可以与多种版本控制系统(如Git、SVN等)以及构建工具(如Maven、Gradle等)无缝集成,方便用户进行项目构建和管理2。
友好的用户界面:Jenkins提供了一个基于Web的用户界面,用户可以通过这个界面轻松地配置项目、管理构建任务和查看构建结果2。
插件生态系统:Jenkins拥有一个庞大的插件生态系统,用户可以根据需要安装不同的插件来扩展Jenkins的功能,满足特定的需求2。
持续部署:除了持续集成外,Jenkins还支持持续部署,可以帮助开发者将构建好的应用程序自动部署到测试环境或生产环境中2。
跨平台支持:Jenkins可以在Windows、Linux和macOS等多种操作系统上运行,具有很强的跨平台能力2。
分布式构建:Jenkins支持分布式构建,可以在多台计算机上并行执行构建任务,提高构建效率2。
Jenkins在现代软件开发中扮演着重要角色,通过自动化构建、测试和部署流程,帮助团队快速、可靠地交付高质量的软件。同时,Jenkins的开源性和社区驱动的开发模型使其在全球范围内受到了广泛的认可和支持1。
请注意,Jenkins的安装、配置和使用需要一定的技术知识和经验,特别是当涉及到复杂的项目和多环境的部署时。因此,在使用Jenkins之前,建议团队成员进行充分的学习和实践,以确保能够充分利用其功能并提高工作效率。
6.Apollo-分布式配置中心-网页
官方文档
:https://github.com/apolloconfig/apollohttps://github.com/apolloconfig/apollo参考下载配置博客:(不需要,公司会给内部网址)
Apollo(阿波罗)分布式配置中心_apollo github-CSDN博客
对于使用微服务架构的企业来说,Apollo是一个强大的分布式配置中心,可以帮助企业集中化管理应用配置,提供实时发布、灰度发布和全量推送等功能。
通过Apollo,企业可以实现在线更新配置而无需重启应用程序,极大地提高了运维效率。
Apollo支持多语言客户端,拥有完善的权限控制和审计日志,确保了配置的安全性。同时,它使用MySQL作为数据存储,实现了高可用性和数据一致性。这些特性使得Apollo成为企业级应用中不可或缺的配置管理工具。
Apollo的使用
了解Apollo核心概念:
- ConfigService:提供配置的读取、推送等功能,服务本身是无状态的,需要搭建多个服务实例以保证高可用性24。
- AdminService:提供配置的修改、发布等功能,服务本身是有状态的,目前采用一主多从的模式来保证服务的高可用性12。
- Apollo客户端:用于和服务端进行交互,通过轮询的方式实现配置更新的实时推送2。
部署Apollo服务端:
- 安装Java环境,确保已安装Java 8或更高版本2。
- 部署ConfigService和AdminService,按照官方文档指引进行部署,并配置数据库(如MySQL),初始化相关数据2。
登录Apollo管理界面:
- 在“应用管理”中创建新的应用,并为其分配相应的权限2。
配置管理:
- 在“配置管理”中,为已创建的应用添加配置项,设置配置项的键、值、数据格式等属性2。
- 可以为配置项设置注释,以便其他成员理解其用途2。
灰度发布与版本控制:
- 选择需要灰度发布的配置项,设置灰度规则,如按照应用、数据中心或IP地址等维度进行划分2。
- 发布灰度配置,并监控其生效情况。Apollo客户端会自动轮询服务端,获取最新的配置信息2。
安全性与性能优化:
- 确保Apollo服务端的访问权限得到严格控制,避免未授权访问2。
- 根据实际应用场景调整轮询间隔、灰度发布策略等参数,以实现最佳性能2。