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环境再配置一个。