centos 安装gitweb?linux安装git

老铁们,大家好,相信还有很多朋友对于centos 安装gitweb和linux安装git的相关问题不太懂,没关系,今天就由我来为大家分享分享centos 安装gitweb以及linux安装git的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

统信UOS A版(基于Centos8)安装GitLab教程

一、安装GitLab-ce

准备gitlab-ce源:

更新源:dnf update–y

执行安装GitLab-ce:dnf install gitlab-ce-14.0.0

等待下载后自动安装。

二、配置GitLab

配置文件示例:

设置外部URL:external_url' xxxx.xxx.com',监听指定域名。

可选设置监听地址:puma['listen']=' xxxx.xxx.com',与上述保持一致。

默认监听端口:puma['port']= 8080。

备份目录:gitlab_rails['backup_path']="/data/backup/gitlab_backup"。

备份默认保存时间:gitlab_rails['backup_keep_time']= 345600。

定义数据保存目录:git_data_dirs({"default"=>{"path"=>"/data/gitlab_data"}})。

开启强制HTTPS:nginx['redirect_http_to_https']= true。

设置SSL证书:nginx['ssl_certificate']="/data/cert/xxx2022.crt", nginx['ssl_certificate_key']="/data/cert/xxx2022.key"。

三、启动GitLab

加载配置文件:gitlab-ctl reconfigure,解决报错时检查相关文件夹是否建立及端口占用问题。

初始化完成后的超级密码默认保存在:/etc/gitlab/initial_root_password目录。

启动仓库:gitlab-ctl start。

校验端口:netstat–nlpt,检查监听端口是否正常。

Web访问:浏览器输入监听域名,使用上述设置的账号密码。

四、基础优化

关闭注册功能:Settings—>General-->Sign-->up restrictions—>取消Sign-up enabled。

更改LOGO:Settings—>Appearance—>更改LOGO。

取消API查询限制:sudo gitlab-rails console,输入:Feature.disable(:limit_projects_in_groups_api)。

调整PUSH仓库大小:在/etc/gitlab/gitlab.rb修改 nginx['client_max_body_size']='1024m'(具体大小需根据实际仓库大小调整)。

nifin刹车系统是哪国的

nfifi简介

在Apache NiFi官网上,是这么介绍NiFi的:“一个易用、强大、可靠的数据处理与分发系统”。Apache NiFi的设计目标是自动化管理系统间的数据流。

NiFi之前是在美国国家安全局(NSA)开发和使用了8年的一个可视化、可定制的数据集成产品。2014年NSA将其贡献给了Apache开源社区,2015年7月成功成为Apache顶级项目。

nifi是一个基于web-ui用户界面,高度可配置的、安全的、基于工作流设计理念、具有很强交互性的、强大易用的、为不同系统间或者系统内的提供数据流管理与处理的系统。

单机版安装

采用maven编译的方式安装

1、安装git

可以使用Centos7上面自带的git。

2、安装maven,版本至少3.1.0以上

注意配置阿里云Maven镜像,不然编译的时候很慢。

3、Checking out from Git,从git中克隆源码

命令:git clone

4、安装

(1)nifi 1.x以上需要jdk8以上,0.x需jdk7以上

(2)Maven需要至少3.1.0以上版本

(3)有些构建步骤比较耗内存,确保MAVEN_OPTS提供足够的内存,可在环境变量中加入export MAVEN_OPTS=”-Xms1024m-Xmx3076m-XX:MaxPermSize=256m”,具体多大根据自己的实际情况来配置。

(4)构建完整的代码库。在源码树运行的根目录中如下命令:

mvn-T C2.0 clean package-Pinclude-grpc-DskipTests

(5)编译完之后在nifi-assembly/target目录下包含解压缩的文件,可以在bin目录下运行启动nifi,./nifi.sh start

(6)然后访问http://主机:8080/nifi/,可在ui界面上玩了。

注:8080是nifi默认端口,如果有冲突,可在nifi.properties中修改端口号。

简单使用

nifi核心术语

FlowFile

一个FlowFile代表每个被系统处理的数据对象,一个FlowFile由两部分组成:属性和内容。内容是数据本身,属性是与数据相关的key-value的键值对,用于描述数据

FlowFileProcessor

Processor是NiFi的组件,可以用来创建、发送、接受、转换、路由、割裂、合并、处理FlowFiles。在用户建立数据流时,Processor是最重要的组成部分,可以将操作结果提交给下一个Processor或者回滚。

Connection

提供Processors之间的连接,用来定义Processors之间的执行关系,并允许不同Processors之间以不同的速度进行交互。

Flow Controller

控制器,它记录processor之间的连接关系,管理线程,管理processor和线程之间的使用关系。是一个类似broker的角色。

Processgroup

它表示一组processor和它们之间的连接。对于这个group而言,它可以通过input端口和output端口,进行数据的接收和发送。

实例

在FTP服务器上有一个txt的压缩文件,内容为:

这里写图片描述

使用nifi从FTP上获取此文件,将其解压,并将M替换为“男”,F替换为“女”,并将处理后的txt文件put到HDFS。

在nifi的web-ui上通过拖拽的方式将Processor拖拽到画布上进行配置,对于nifi的processor的配置说明可参考官网nifi官方文档。

要实现以上功能需要5个processor,相关配置如下:

1.GetFTP,负责从FTP的特定路径下获取文件,并创建FlowFile供后续处理,具体配置如下:

这里写图片描述

File Filter Regex属性可以配置要处理文件名的正则表达式,从而起到筛选文件的作用。

2. CompressContent,负责压缩或解压FlowFile的内容,具体配置如下:

这里写图片描述

3.ReplaceText,通过定义正则表达式,可对正则表达式匹配到的内容进行替换,从而起到对FlowFile内容进行修改的作用。此ReplaceText将FlowFile内容中的M替换成文字“男”。具体配置如下:

这里写图片描述

4. ReplaceText,与上一个Processor是同一个类型,将FlowFile内容中的F替换成文字“女”。

5. PutHDFS,负责将FlowFile以文件形式存放到HDFS的中。

Gitlab CICD实践(Docker+Jenkins+Nginx)

首先,准备一台服务器,这里使用的是阿里云的centos系统。

在服务器上安装git并配置密钥,连按enter键。

执行cd/root/.ssh、ls命令,可以看到生成了id_rsa(私钥)和id_rsa.pub(公钥)。

将公钥复制到gitlab的SSH Keys中,验证是否可以拉取gitlab上的代码。

如果可以正常拉取,则表示配置成功。

接下来,安装docker。具体安装教程请参考:CentOS Docker安装。

Docker Compose是一个用于定义和运行多容器Docker应用程序的工具。它通过一个单独的文件来配置应用程序的服务,并定义这些服务之间的关系。使用Docker Compose可以轻松地在不同的环境中部署和管理复杂的多容器应用程序。

安装Nginx和Jenkins,并创建文件目录。

创建配置文件docker-compose.yml和nginx.conf。

开放阿里云端口:8080、8001、8002。

执行docker启动命令systemctl start docker。

进入到对应目录cd/docker/compose。

执行命令docker-compose up-d。

使用docker ps-a查看容器状态。

在浏览器中输入自己的服务器IP:8080,可以看到jenkins页面。

查看Jenkins密码,可以使用docker ps查看Jenkins的CONTAINER ID。

使用docker exec-it 48575ad62348/bin/bash进入容器内。

使用cat/var/jenkins_home/secrets/initialAdminPassword查看Jenkins密码。

输入密码后进入主页,点击安装推荐的插件。

安装完成后设置用户名密码。

实例配置,保存,进入到Jenkins首页。

点击Manage Jenkins=>Plugins。

点击Installed plugins,搜索框输入local。

如果已经安装,执行重启:url输入:端口/restart,重启后面板变为中文。

搜索GitLab,Publish Over SSH,NodeJS,选中点击安装,安装完成后重启Jenkins。

配置Publish Over SSH连接远程服务器。

点击系统管理=>系统配置,找到Publish Over SSH,点击新增。

填写信息,点击高级,勾选use password,将服务器上的id_rsa(私钥)的内容填写在Key里面。

将服务器上的id_rsa.pub(公钥)内容放在同级目录authorized_keys文件下。

往下滑动,点击Test Configuration,显示success则测试成功。

配置NodeJS。

点击全局工具配置,找到NodeJS,点击新增NodeJS,选择node版本,保存。

添加凭据,方便后续使用。

输入gitlab用户名和密码,保存。

创建Job。

保存后点击立即构建,查看构建日志。

配置gitlab的webhooks。

上面的url填写Jenkins里面的url,还需要填写webhooks里面的Secret token,secret token需要在jenkins生成。

继续点击jenkins的高级按钮,往下滑,点击Generate生成secret token,填写到gitlab的secret token(上图所示),最后点击保存。

验证webhooks,返回200表示验证成功,打开Jenkins发现已新增一条记录。

服务器上也已经把源码同步过来了。

配置构建步骤。

选择之前配置的node版本,点击保存。

点击立即构建,系统会自动安装对应的nodejs版本。

增加shell命令。

点击立即构建,验证环境可用。

添加yarn包管理器。

点击立即构建,验证yarn是否成功安装。

安装依赖,打包yarn install,yarn build。

服务器也同步过来了dist和node_modules目录。

自动把打包产物部署到对应环境的目录。

把dist目录压缩成dist.tar压缩包。

通过SSH把dist.tar压缩包发送到服务器上。

保存后点击构建,运行成功。

可以看到服务器上已经有了dist目录。

访问ip:8001,可以正常展示页面。

流程:gitlab的dev分支提交代码后会触发webhooks,通知jenkins自动构建,jenkins会拉取gitlab的dev分支代码,执行yarn build打包成dist,之后把dist压缩成dist.tar,通过SSH把dist.tar包发送到dev环境的目录,并把dist.tar包解压成dist目录,实现dev环境更新。

生产环境的部署可以参照dev环境再配置一个。

阅读剩余
THE END