linux-cicd
htop cpu什么的监控
#t查看进程 /搜索进程 k杀死进程
df 查看磁盘
# -h用g m单位查看占用情况 -T
du -sh /opt 查看指定文件占用
#vi 文件斜杠快速查找/ n下一个,N上一个
#tar解压缩
解压:tar -xzvf
压缩:tar -czvf
查看内存从大到小占用 ps aux --sort=-%mem | head -15
| 安装方式 | 依赖 | 版本 | 路径 | 卸载 |
|---|---|---|---|---|
| tar 二进制 | 手动自己装依赖 | 任意自选 | 自定义目录 | 删文件夹 |
| rpm 本地 | 手动补依赖 | rpm 包固定版本 | 预设路径 | rpm -e |
| yum 在线 | 自动拉取依赖 | 源内固定版本 | 系统标准路径 | yum remov |

查看日志
tail -f /var/log/... #默认显示最后十行 -n指定查看多少行
head /var/log/... #默认显示开头十行
tail -f /var/log/... | grep -i "failed"
安装rambbitmq
curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
cd /etc/yum.repos.d
vi rabbitmq.repo #粘贴以下内容
[rabbitmq_rabbitmq-server]
name=rabbitmq_rabbitmq-server
baseurl=https://packagecloud.io/rabbitmq/rabbitmq-server/el/7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
yum install -y erlang
yum install -y rabbitmq-server

启动web插件
rabbitmq-plugins enable rabbitmq_management
创建新用户
rabbitmqctl add_user admin root
给用户设置为管理员
rabbitmqctl set_user_tags admin administrator
用户分配虚拟主机权限
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
安装redis
yum install -y epel-release
yum install -y redis
redis-server -v
systemctl start redis
部署jenks
#可以直接搜官网下载看官网的方法
sudo wget -O /etc/yum.repos.d/jenkins.repo \
https://pkg.jenkins.io/rpm-stable/jenkins.repo
sudo yum upgrade
# Add required dependencies for the jenkins package
sudo yum install fontconfig java-21-openjdk
sudo yum install jenkins
sudo systemctl daemon-reload
查看版本与支持包
https://www.jenkins.io/doc/book/platform-information/support-policy-java/
下载jenkins包地址
https://get.jenkins.io/war-stable/ #2.492.3
#war包不用解压就放到对应目录就行
#下载jdk
https://mirrors.tuna.tsinghua.edu.cn/Adoptium/ #国内镜像源更快
#为kenkins安装字体依赖,创建工作目录
yum -y install fontconfig
mkdir -p /data/jenkins/{jdk17,jenkins_data}
#配置jdk17环境
tar xzvf "OpenJDK17U-jdk_x64_linux_hotspot_17.0.19_10 (1).tar.gz" -C /data/jenkins/jdk17/ --strip-components=1
#创脚本文件
touch /data/jenkins/{start.sh,stop.sh} && chmod o+x /data/jenkins/{start.sh,stop.sh}
cd /data/jenkins/
#创建脚本开机自启
vi /etc/systemd/system/jenkins.service
#写入
[Unit]
Description=Jenkins Self Startup
After=network.target[Service]
Type=forking
User=root
WorkingDirectory=/data/jenkins
ExecStart=/data/jenkins/start.sh
Restart=on-failure[Install]
WantedBy=multi-user.target
#start.sh-------(由于war包安装没有配置目录这个脚本文件就相当于配置文件)
#!/bin/bash
##定义主目录地址
CURDIR='/data/jenkins'
##定义jenkins工作端口号
WORKPOT='9090'
#定义环境变量,启动程序前设置避免对系统默认的jdk环境有影响
export JAVA_HOME=${CURDIR}/jdk17
export PATH=${JAVA_HOME}/bin:$PATH
##以nohup后台启用jenkins,-DJENKINS_HOME选项指定工作目录,-jar指定包路径,--httpPort指定工作端口号,指定日志输出文件路径
nohup java -DJENKINS_HOME=${CURDIR}/jenkins_data -jar ${CURDIR}/jenkins.war --httpPort=${WORKPOT} &>>${CURDIR}/jenkins_$(date +%F).log &
stop.sh
#!/bin/bash
CURDIR='/data/jenkins'
ps aux | grep ${CURDIR}/jenkins.war | grep -v grep | awk '{print $2}' | xargs kill 2>/dev/null
然后运行脚本start.sh
tail -f jenkins_2026-05-29.log -n 100
查看密码
查看密码
cat /data/jenkins/jenkins_data/secrets/initialAdminPassword
#安装推荐插件或者自己选择插件会因为网络问题比较慢多重试几次就行
#安装失败解决思路
docker部署jenkins
linux是多用户,多任务的机器
ps -ef 查看进程
cat /etc/passwd 查看用户
useradd ljh
passwd ljh
ssh ljh@ip地址
不同用户登录进去会加载不一样的观景变量 。bash_profile



[root@qfedu.com ~]# yum install git git-core gitweb -y
[root@qfedu.com ~]# useradd git
[root@qfedu.com ~]# passwd git
[root@qfedu.com ~]# mkdir /git-root/
[root@qfedu.com ~]# cd /git-root/
[root@qfedu.com git-root]# git init --bare shell.git# 1. 给裸仓库改权限
[root@qfedu.com git-root]# chown -R git:git shell.git# 2. 切换到git用户
[root@qfedu.com git-root]# su - git# 3. 生成SSH密钥对
[git@qfedu.com ~]$ ssh-keygen -t rsa# 4. 进入.ssh目录
[git@qfedu.com ~]$ cd .ssh/# 5. 把公钥复制成授权文件
[git@qfedu.com .ssh]$ cp id_rsa.pub authorized_keys# 6. (可选)编辑授权文件(图里笔误,应为authorized_keys)
[git@qfedu.com .ssh]$ vim authorized_key# 7. 退出git用户,回到root
[git@qfedu.com .ssh]$ logout# 8. 给git用户设置专用shell,限制登录
[root@qfedu.com git-root]# usermod -s /usr/bin/git-shell git# 9. 回到root家目录
[root@qfedu.com git-root]# cd
git-client
[root@qfedu.com ~]# yum install git git-core gitweb -y
# 1. 客户端生成SSH密钥
[root@qfedu.com ~]# ssh-keygen# 2. 把公钥上传到Git服务器
[root@qfedu.com ~]# ssh-copy-id git@192.168.1.178# 3. 从服务器克隆裸仓库
[root@qfedu.com ~]# git clone git@192.168.1.102:/git-root/shell.git# 4. 查看克隆下来的文件
[root@qfedu.com ~]# ls
rh shell# 5. 进入仓库目录
[root@qfedu.com ~]# cd shell/# 6. 创建测试文件
[root@qfedu.com shell]# vim test.sh# 7. 把文件加入暂存区
[root@qfedu.com shell]# git add test.sh# 8. 配置Git用户邮箱(首次提交需要)
[root@qfedu.com shell]# git config --global user.email "you@example.com"# 9. 配置Git用户名(首次提交需要)
[root@qfedu.com shell]# git config --global user.name "Your Name"# 10. 提交代码到本地仓库(加-m就不会打开编辑器)
[root@qfedu.com shell]# git commit -m 'first commit'# 11. 把本地提交推送到服务器裸仓库
[root@qfedu.com shell]# git push origin master

git reflog #查看历史版本
git reset 版本号 #回退版本


安装gitlab(需要4g以上大内存)
# 关闭防火墙(生产环境不建议直接关,可按需开放端口)
systemctl stop firewalld
systemctl disable firewalld# 关闭 SELinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config# 开启邮件服务 postfix
systemctl start postfix
systemctl enable postfix#安装gitlab依赖包
yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python
#安装gitlab官方源
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
#yum安装gitlab
yum -y install gitlab-ce
#yum安装慢可以选择直接去清华镜像源下载rpm包
yum -y localinstall gitlab-ce-16.8.0-ce.0.el7.x86_64.rpm
/opt是 Linux 系统里一个专门用来放第三方、可选软件的目录,GitLab 安装后也会把核心文件放在这里。#gitlab在opt目录下
配置文件在/etc/gitlab下
#修改配置文件
external_url 'http://192.168.255.91' 改为本机ip
#初始化gitlab
gitlab-ctl reconfigure
#启动所以服务
gitlab-ctl start
gitlab-ctl enable
#浏览器输入ip访问gitlab

cat /etc/gitlab/initial_root_password #查看root密码
然后用户:root 密码:复制的
#gitlab配置邮箱
vi /etc/gitlab/gitlab.rb
#文件末尾添加
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = '276267003@qq.com'
gitlab_rails['gitlab_email_display_name'] = 'gitlab'
gitlab_rails['gitlab_email_reply_to'] = '276267003@qq.com'
gitlab_rails['gitlab_email_subject_suffix'] = '[gitlab]'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "276267003@qq.com"
gitlab_rails['smtp_password'] = "kktohrvdryglbjjh"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = false
gitlab_rails['smtp_tls'] = true#可能会报错说
gitlab_rails['smtp_enable_starttls_auto'] = true #可以把这个改成false
gitlab_rails['smtp_tls'] = true这俩不能同时开启
#重新加载配置文件
gitlab-ctl reconfigure
gitlab-ctl stop
gitlab-ctl start#测试邮件发送
gitlab-rails console
Notify.test_email('3423903428@qq.com', 'Message Subject', 'Message Body').deliver_now
create group可以创建项目组
create people可以创建用户,编译用户可以设置密码后续登录
进入项目组再邀请项目成员
想要合并请求要别人批准
#要切换到指定目录才可以访问git是因为只有tom用户设置了ssh公钥信任
#git pull 只能拉取所在分支的内容 (在bb分支就不能拉到master分支的)
#数据备份
vi /etc/gitlab/gitlab.rb
gitlab_rails['manage_backup_path'] = true #开启备份功能
gitlab_rails['backup_path'] = "/data/gitlab/backups" #设置备份目录
gitlab-ctl reconfig #重新加载配置gitlab-ctl restart #或重启生效
mkdir -p /data/gitlab/backups
chown -R git:git /data/gitlab/backups
#执行命令进行备份
/opt/gitlab/bin/gitlab-rake gitlab:backup:create
#制定定时任务
crontab -e
# 每日凌晨2点自动全量备份
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
#设置保留时间
vim /etc/gitlab/gitlab.rb
# 配置备份留存7天,单位:秒 7*24*3600=604800
gitlab_rails['backup_keep_time'] = 604800#恢复数据
----------源服务器--------------------------------------------
# 1. 生成完整备份(生成 tar 包)
gitlab-rake gitlab:backup:create# 2. 备份 2 个必须的密钥文件(非常重要!)
cp /etc/gitlab/gitlab.rb /data/gitlab/backups/
cp /etc/gitlab/gitlab-secrets.json /data/gitlab/backups/# 3. 把所有备份文件传到新服务器(tar + 两个配置)
# 把 192.168.255.92 换成你的新服务器 IP
rsync -av /data/gitlab/backups/* root@192.168.255.92:/data/gitlab/backups/
rsync -av /etc/gitlab/gitlab.rb root@192.168.255.92:/etc/gitlab/
rsync -av /etc/gitlab/gitlab-secrets.json root@192.168.255.92:/etc/gitlab/----------新服务器-------------------------------------------------
gitlab-ctl stop puma
gitlab-ctl stop sidekiqchown git:git /data/gitlab/backups/*.tar
gitlab-rake gitlab:backup:restore BACKUP=1780537766_2026_06_04_16.8.0
gitlab-ctl start
#mavean和nexus3
yum install -y maven
#或者二进制包安装
#1.下载3.9.6(稳定适配JDK17)
wget https://archive.apache.org/dist/maven/maven-3/3.9.6/binaries/apache-maven-3.9.6-bin.tar.gz
tar -zxvf apache-maven-3.9.6-bin.tar.gz -C /usr/local/
#2.配置/etc/profile环境变量,替换旧maven
export M2_HOME=/usr/local/apache-maven-3.9.6 #解压后的maven所在目录
export PATH=$PATH:$M2_HOME/bin
source /etc/profile
mvn -v
<!--注释开始-->注释结束#1、添加adoptium源
wget -O /etc/yum.repos.d/adoptium.repo https://packages.adoptium.net/artifactory/rpm/centos/7/adoptium.repo
rpm --import https://packages.adoptium.net/artifactory/api/gpg/key/public#2、安装完整JDK17(带编译工具=devel)
yum clean all && yum makecache
yum install -y temurin-17-jdk#安装nexus3
cd /opt
wget https://dependency-fe.oss-cn-beijing.aliyuncs.com/nexus-3.29.0-02-unix.tar.gz
#3.6x版本一下的存在高危漏洞
https://help.sonatype.com/en/download.html #官方安装网站
# 解压
tar -zxvf nexus-3.29.0-02-unix.tar.gz#启动
/opt/nexus-3.29.0-02/bin/nexus start
#查看默认密码
cat /opt/sonatype-work/nexus3/admin.password
#官方提供的免费仓库
#仓库类型
#release(稳定版)snapshot(不稳定版)
#创建私有仓库
setting -> repository -> createrepository
#将私有仓库纳入maven-public
#创建本地用户
#上传jar包
#jenkins非容器化和容器化
#配置
#git同理
#下载插件
Authorize project , Role-Based Authorization-Strategy, ssh ,Maven Intergration
#jenkins添加远程机器
1.先新建域
2.再新建凭证
3.添加凭证
#harbor下载
#官方网站下载
#解压:
tar -xvzf
cd harbor
cp harbor.yml.tmpl harbor.yml
vi harbor.yml
#
hostname: 改成你服务器本机IP(比如192.168.x.x,不能写localhost/127.0.0.1)#注释掉https下的所有
#在./install.sh前需要提前安装好docker-ce docker-compose才能安装成功
#默认用户名密码:admin : Harbor12345
#不对的话可以去harbor.yml查grep harbor_admin_password
#先创项目,再创用户,进入项目让用户加入项目
#json文件配置
cat > /etc/docker/daemon.json <<'EOF'
{
"registry-mirrors": [
"https://docker.m.daocloud.io",
"https://ccr.ccs.tencentyun.com",
"https://hub.xdark.top",
"https://dhub.kubesre.xyz",
"https://docker.kejilion.pro",
"https://docker.xuanyuan.me",
"https://docker.hlmirror.com",
"https://run-docker.cn",
"https://docker.sunzishaokao.com",
"https://image.cloudlayer.icu",
"https://docker.tbedu.top",
"https://hub.crdz.gq",
"https://docker.melikeme.cn",
"https://xuanyuan.cloud"
],
"insecure-registries": ["192.168.255.92:80"], #要有这个才能推送
"log-opts": {
"max-size": "5m",
"max-file":"3"
},
"data-root": "/var/lib/docker",
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
#推送镜像上harbor
#先login
docker login 192.168.255.92:80 -u admin -p Harbor12345
#打标签记得要带80端口
docker tag nginx 192.168.255.92:80/jenkins/nginx:v0
docker push 192.168.255.92:80/jenkins/nginx:v0
#从harbor上拉取镜像
但也是不带端口的需要手动添加端口否则会报错,默认443端口
#业务服务器
#也要安装docker docker-compose
#还有jd
yum install -y epel-release
yum install -y jq
visudo
#添加 Defaults:root !requiretty
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐






































所有评论(0)