运维笔记
文章平均质量分 84
运维服务器笔记
the丶only
个人博客网站(运维笔记) ywbj.cc
展开
-
使用 Docker Swarm(集群) 和Docker Stack(堆栈)部署容器化应用
Docker Stack(堆栈) 是在 Swarm 上管理服务堆栈的工具。而在上面文章 中介绍的 Docker Swarm 只能实现对单个服务的简单部署,于是就引出了Docker Stack。上面我们介绍到docker-compose:可以在一台机器上使用docker-compose.yml轻松部署多个服务(如nginx,php,mysql)docker swarm:将一个服务部署至多台机器(如nginx,部署到机器1,机器2,机器3)原创 2024-03-27 09:00:00 · 1810 阅读 · 0 评论 -
Docker Stack(堆栈) 部署多服务集群,多服务编排
Docker Stack(堆栈) 是在 Swarm 上管理服务堆栈的工具。而在以前文章介绍的 Docker Swarm 只能实现对单个服务的简单部署,于是就引出了Docker Stack。上面我们介绍到那Docker Stack(堆栈) 是将docker-compose和docker swarm结合起来,在多台服务器集群,部署多个服务。Docker Stack 使用与 Docker Compose 相同的 YAML 文件格式来定义服务堆栈。原创 2024-03-26 16:43:03 · 1863 阅读 · 0 评论 -
中小型集群部署,Docker Swarm(集群)使用及部署应用介绍
说到集群,第一个想到的就是k8s,但docker官方也提供了集群和编排解决方案,它允许你将多个 Docker 主机连接在一起,形成一个“群集”(Swarm),并可以在这个 Swarm 上运行和管理你的服务。与Kubernetes相比,Docker Swarm的群集管理功能相对简单,Swarm更适合于小型到中型的容器部署,并且通常用于简单的应用程序部署和管理。如果经常用docker-compose 的人员来说,可以这样容易理解。原创 2024-03-26 16:31:50 · 1174 阅读 · 0 评论 -
自动化代码质量检测平台sonarqube搭建及使用,以及集成gitlab ci提交自动返回结果
Sonar (SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持java, JavaScrip, Scala 等等二十几种编程语言的代码质量管理与检测。SonarQube®是一种自动代码审查工具,用于检测代码中的错误,漏洞和代码异味。它可以与您现有的工作流程集成,以便在项目分支和拉取请求之间进行连续的代码检查。原理架构,这里不多说了,网上一大把,咱们直接开干就完了。原创 2024-03-14 17:31:02 · 3354 阅读 · 0 评论 -
搭建自己的直播流媒体服务器SRS,以及SRS+OBS直播推拉流使用及配置
目前,全球直播带货什么的,成为主流,那如何自己搭建一个直播服务器呢。流媒体解决方案 Live555 (C++)流媒体平台框架 EasyDarwin (C++,国产精品)实时流媒体播放服务器程序DarwinStreamingSrvr (C++)Flash流媒体服务器 Red5 (Java)流媒体服务器 Open Streaming Server (Java)FMS流媒体服务器 (Adobe,收费的)Wowza流媒体服务器(Java)开源流媒体平台FreeCast(Java)原创 2022-09-22 16:09:25 · 19984 阅读 · 2 评论 -
用acme.sh给网站域名,申请免费SSL永久证书(自动续期)
申请ssl证书,即https有很多,有免费的,也有收费的。如第三方域名管理cloudflare也可以自动添加使用https,而且永久。但是由于有些服务,需要在服务器使用自签证书,所以需要自己申请。免费的可以使用certbot,也可以是使用zeroSSL。Certbot申请免费SSL证书这里,介绍使用acme.sh生成免费的ssl证书,其完整实现了acme协议,并且由纯Shell脚本语言编写,没有过多的依赖项,安装和使用都非常方便。原创 2022-09-09 12:34:55 · 14636 阅读 · 2 评论 -
Linux搭建开源企业云盘Seafile,私有文件同步云盘及基本使用
在日常生活经常需要在不同的设备间同步文件,还有在企业作为公司云存储备份使用。类似的有谷歌云端硬盘,但是作为企业不能统一管理,即没有admin权限管理其他账号,而且免费空间有限。国内的百度网盘,并没有文件同步功能,只支持手动的上传和下载,而且也没有文件历史版本功能。Seafile是一款优秀的开源企业云盘软件,拥有文件版本管理、跨平台文件同步和共享等功能,可以方便自建一个私有的云存储服务。原创 2022-09-02 15:44:09 · 5761 阅读 · 0 评论 -
Linux搭建samba文件共享服务器,实现基于Linux和Windows的共享文件服务
有些在其他Linux系统上,还会安装samba-client,用来连接Linux之间的连接使用,但这里主要给windows使用,而且只作为服务器,所有就不安装samba-client了。在ubuntu中这个参数是默认是开启的,所以每次访问IP是不需要输入密码的,如://192.168.152.103 所有用户可直接访问,然后访问里面的目录,才需要账号密码。可以基于特定的用户访问,功能比NFS更强大。输入PM和密码,进入,只能看到自己的PM部门文件夹,其他的主配置的IT和HR,都看不见,因为没权限。...原创 2022-08-18 10:29:48 · 7009 阅读 · 1 评论 -
Linux 忘记密码怎么办,CentOS和Ubuntu重置密码方法
rd.break意思是,在系统中断之前将控制权从initramfs系统移交给实际系统,initramfs作用可自行研究,这里不深究。原创 2022-07-28 15:22:26 · 3047 阅读 · 1 评论 -
普罗米修斯Prometheus+Grafana,监控搭建与界面基础配置
httpsPrometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,由SoundCloud公司开发。Prometheus基本原理是通过HTTP协议周期性抓取被监控组件的状态,这样做的好处是任意组件只要提供HTTP接口就可以接入监控系统,不需要任何SDK或者其他的集成过程。这样做非常适合虚拟化环境比如VM或者Docker。Prometheus应该是为数不多的适合Docker、Mesos、Kubernetes环境的监控系统之一。...原创 2022-07-19 11:37:53 · 16929 阅读 · 1 评论 -
Linux搭建frp服务,实现内网穿透服务,实现外网到内网的在线访问
frp 是什么?frp 采用 Golang 编写,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。市面上一些主流的内网穿透工具有:Ngrok,Natapp,花生壳,Ssh、autossh,Frp,Lanproxy,Spike。这里介绍使用frp工具。Ngrok可参考我另一篇文章:搭建ngrok服务器,实现内网穿透原创 2022-07-14 09:31:01 · 7811 阅读 · 2 评论 -
使用ffmpeg转码MP4至m3u8格式并切片,以及自动检测切片m3u8脚本编写
HLS,Http Live Streaming 是由Apple公司定义的用于实时流传输的协议,HLS基于HTTP协议实现,传输内容包括两部分,一是M3U8描述文件,二是TS媒体文件。M3U8文件是指UTF-8编码格式的M3U文件。M3U文件是记录了一个索引纯文本文件,打开它时播放软件并不是播放它,而是根据它的索引找到对应的音视频文件的网络地址进行在线播放。M3U8是一种常见的流媒体格式,主要以文件列表的形式存在,既支持直播又支持点播,尤其在Android、iOS等平台最为常用。最常见的参数有:#EXTM原创 2022-07-12 10:24:58 · 6809 阅读 · 1 评论 -
Linux搭建Promtail + Loki + Grafana 轻量日志监控系统
一:简介日志监控告警系统,较为主流的是ELK(Elasticsearch 、 Logstash和Kibana核心套件构成),虽然优点是功能丰富,允许复杂的操作。但是,这些方案往往规模复杂,资源占用高,操作苦难。很多功能往往用不上,大多数查询只关注一定时间范围和一些简单的参数(如host、service等),使用这些解决方案就有点杀鸡用牛刀的感觉了。所以寻找更轻量级的日志监控系统,所以也就有了EFK(elasticsearch+kibana+filebeat),搭建参考:EFK轻量级日志系统搭建另外一原创 2022-05-18 11:55:02 · 4595 阅读 · 0 评论 -
基于docker快速搭建自己的域名邮箱,mailu邮件服务器
一:简介Mailu.io是一款免费开源且性能强大、功能丰富的域名邮箱系统。它基于Docker, 具有部署简单,可移植性高,备份方便等多种优势。主要的功能:基本的邮件服务器 IMAP IMAP+,SMTP和进阶电子邮件功能 别名,域别名,自定义路由Web访问 多个Webmail管理界面用户功能 别名,自动回复,自动转发,获取帐户管理员功能 全局管理员,公告,每域配额安全 强制启用TLS,Letsencrypt!,DKIM,防病毒扫描程序反垃圾邮件 自主学习 灰名单 DMARC 和 SPF原创 2022-05-10 12:54:41 · 24658 阅读 · 13 评论 -
堡垒机、跳板机JumpServer的搭建,以及使用,图文详细
一、简介为了保证服务器安全,加个堡垒机,所有ssh连接都通过堡垒机来完成,堡垒机也需要有身份认证,授权,访问控制,审计等功能。Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。在公司中,分配人员服务器权限也是相当方便,如:来一个新人,在Jumpserver分配Jumpserver账号即可,人员离职,在Jumpserver删掉人员账号即可。无需担心人员离职留下后门,当然前提是检查防火墙,只允许Jumpserv原创 2022-04-22 17:12:05 · 27109 阅读 · 2 评论 -
搭建自己的聊天室平台、公司内部聊天平台,Rocket.Chat搭建及使用
一,简介rocket.chat是一个开源的社交软件,即可以直接在web页面使用,也可以下载APP(Android,IOS,Windows,Mac OS)主要功能:群组聊天,直接通信,私聊群,桌面通知,媒体嵌入,链接预览,文件上传,语音/视频 聊天,截图等,还支持实时翻译,实现用户之间的自动实时消息转换。也可以作为公司的内部聊天平台,所有数据都在自己的服务器上。官方网址:https://rocket.chat/官方github地址:https://github.com/RocketChat/Rock原创 2022-04-13 11:41:43 · 16301 阅读 · 5 评论 -
Linux-ubuntu安装软件报错E: Sub-process /usr/bin/dpkg returned an error code (1)解决办法
问题描述Ubuntu在apt 安装软件时,报错如下:E: Sub-process /usr/bin/dpkg returned an error code (1)解决方法:备份原info文件,防止失败还原用sudo mv /var/lib/dpkg/info /var/lib/dpkg/info.bak新建info文件sudo mkdir /var/lib/dpkg/info更新apt相关信息sudo apt update && sudo apt -f install原创 2022-04-08 11:44:06 · 1923 阅读 · 1 评论 -
Linux开源软件Gatus - 自动化监控网站运行服务
一:Gatus简介:Gatus 提供一个轻量级的监控健康,让开发者通过服务的简单 HTTP、ICMP 等协议来监控情况,并根据网页监控 TCP 的状态码或响应时间及正文来决定网站是否健康,如果发生的话异常,可以设置不同的 Alert 像是 Slack、Email、Teams、 Discord这个链接查看Dashboard 实际情况。它是Go语言写出来的,非常轻量。官方github:https://github.com/TwiN/gatus界面显示:功能单一,但是非常实用的工具,设置简单,zabbi原创 2022-04-02 17:43:43 · 2253 阅读 · 0 评论 -
mongoDB重装或升级版本后,启动失败原因及解决方法
问题描述:重装mongodb,或者升级mongdb版本后,重启启动也没有任何错误提示,但是查看为失败failed状态。没有启动成功。启动报错ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=exited, status=14)问题原因及解决方法:1:权限问题网上找了一圈,大多是这种答案,但是对我没有效果,仍然是failed状态。这里写出来作为参考:查看数据存储目录、日志目录,和/tmp下的*.sock(*是通配符)的文件这三个目原创 2022-03-30 17:49:21 · 4162 阅读 · 0 评论 -
docker-compose备份数据库命令,在crontab定时任务中不生效问题,解决方法
问题:数据库为PostgreSQL。由于数据库是用docker-compose运行,所以直接用docker-compose命令直接备份。测试终端直接运行备份没问题,将命令添加到crontab定时任务,却得到一个数据为0的空文件,命令失效。终端备份执行命令,(终端执行备份没问题,数据完整)sudo docker-compose exec database pg_dump hackmd -U hackmd > /home/ubuntu/backup/codimd_`date +%F`.sql添原创 2022-03-19 18:15:08 · 1750 阅读 · 0 评论 -
gitlab云盘定时自动备份,gitlab服务器迁移、还原恢复
1:前言防止gitlab服务器奔溃,或者被有心人恶意删除,所以采用云端备份的方式。即使服务器被删除,也可以在云端下载到新服务器,重新恢复。2:备份gitlab注:gitlab备份还原只能在相同版本中才能恢复,否则提示版本不成功。命令:gitlab-rake gitlab:backup:create备份完成,可在 /var/opt/gitlab/backups/ 路径查看sudo ls /var/opt/gitlab/backups/3:安装mega云盘mega地址:https://me原创 2022-02-23 15:37:49 · 1333 阅读 · 0 评论 -
网站通过nginx设置黑/白名单IP限制、国家城市IP访问限制
一、黑/白名单IP限制访问配置nginx配置黑白名单有好几种方式,这里只介绍常用的两种方法。1、第一种方法:allow、denydeny和allow指令属于ngx_http_access_module,nginx默认加载此模块,所以可直接使用。这种方式,最简单,最直接。设置类似防火墙iptable,使用方法:直接配置文件中添加:#白名单设置,allow后面为可访问IP location / { allow 123.13.123.12; allow 23.53.32.1/原创 2022-01-21 18:26:16 · 22476 阅读 · 2 评论 -
网站nginx配置限制单个IP访问频率,预防DDOS恶意攻击
一、简介对于网站来说,尤其是流量较大出名的网站,经常遇到攻击,如DDOS攻击等,虽然有些第三方,如Cloudflare可以挡,但对于动态网站PHP来说,只能挡一部分。这时候需要对于单个IP恶意攻击做出限流。nginx的两个模块可以限流。nginx两个限流模块:连接频率限制,ngx_http_limit_conn_module:官方文档请求频率限制,ngx_http_limit_req_module:官方文档二、两者模块区别首先理解请求和连接,HTTP请求建立在一次TCP连接基础上, 一次TCP原创 2022-01-20 16:45:07 · 6657 阅读 · 1 评论 -
ELK配置之,filebeat更改自定义索引名称
简介:filebeat客户端添加成功后,在kibana查看添加的索引,默认情况下,当索引生命周期管理(ILM)被禁用或不受支持时,Filebeat 使用时间序列索引。索引命名格式为 filebeat-7.16.1-yyyy.MM.dd。如图所示:一台filebeat还好,可以清楚的分辨,但当多台机器添加后,共用一个索引名,无法分辨,这时需要自定义索引名称。有两种方法更改索引名称。方法一:在filebeat.yml文件中,配置setup.template.name和 setup.template.原创 2021-12-17 16:41:16 · 3984 阅读 · 0 评论 -
Linux安装配置ELK日志收集系统,elasticsearch+kibana+filebeat轻量级配置安装
一:ELK简介ELK是三个开源软件的缩写,分别表示:Elasticsearch , Logstash, Kibana , 它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。Elasticsearch是个开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索原创 2021-12-16 11:33:52 · 824 阅读 · 0 评论 -
Linux 查看占用资源cpu、内存最大的进程命令
第一种方法:1、详细查询命令:查看cpu最大进程,或者内存最大进程。#CPUps aux|head -1;ps aux|grep -v PID|sort -rn -k 3|head#内存ps aux|head -1;ps aux|grep -v PID|sort -rn -k 4|head显示如下:ubuntu@ubuntu:~$ ps aux|head -1;ps aux|grep -v PID|sort -rn -k 3|headUSER PID %CPU %MEM原创 2021-12-09 17:13:29 · 3323 阅读 · 0 评论 -
Linux 磁盘管理,挂载分区管理,磁盘分区扩容缩容管理,详细教程
一、Linux磁盘基本信息查看命令df -h 查看已经在使用或挂载的磁盘信息。查看的是文件系统的大小ubuntu@ubuntu:~$ df -hFilesystem Size Used Avail Use% Mounted onudev 1.9G 0 1.9G 0% /devtmpfs 391M 1.5M 390M原创 2021-12-06 18:07:11 · 8381 阅读 · 1 评论 -
K8S组件-----图形化web界面Dashboard搭建安装,让k8s管理更简单
一:Dashboard简介Dashboard 是基于网页的 Kubernetes 用户界面。 你可以使用 Dashboard 将容器应用部署到 Kubernetes 集群中,也可以对容器应用排错,还能管理集群资源。 你可以使用 Dashboard 获取运行在集群中的应用的概览信息,也可以创建或者修改 Kubernetes 资源 (如 Deployment,Job,DaemonSet 等等)。 例如,你可以对 Deployment 实现弹性伸缩、发起滚动升级、重启 Pod 或者使用向导创建新的应用。Das原创 2021-11-21 10:00:00 · 4388 阅读 · 0 评论 -
k8s命名空间Namespace介绍与使用,以及用kubens插件管理namespace
1、简介命名空间适用于存在很多跨多个团队或项目的用户的场景。对于只有几到几十个用户的集群,根本不需要创建或考虑命名空间。当需要名称空间提供的功能时,请开始使用它们。简单理解,不同团队之间的项目,隔离作用,互不干扰。但是必要情况下,也是可以互相通信的。Kubernetes中的集群默认会有一个叫default的namespace。实际上,应该是3个:default:你的service和app默认被创建于此。kube-system:kubernetes系统组件使用。kube-public:公共资源使原创 2021-11-20 10:30:00 · 1746 阅读 · 0 评论 -
实践出真知----k8s初步熟悉使用介绍,实践搭建nginx集群
k8s部署搭建参考:基于Linux(Ubuntu20.04)初步搭建k8s集群一、前言三个基本概念,Pod,Service,namespace。Pod:k8s最小单元Service:pod每次动态创建后,自动分配的ip会不同,所以引入了service(即服务的注册与发现)namespace:命名空间,主要用于隔离k8s一切皆容器,所有的服务也好,插件也好,pod都是运行在容器之中。部署项目,类似docker-compose通过yaml文件拉取生成项目布置,docker-compose只能单机本原创 2021-11-19 13:04:03 · 3157 阅读 · 0 评论 -
基于Linux(Ubuntu20.04)初步搭建k8s集群基础,详细教程
一:搭建基础环境k8s官方网站:https://kubernetes.io/zh/ ,可自行查看相关文档说明k8s-master:Ubuntu–192.168.152.100k8s-node01:Ubuntu–192.168.152.101k8s-node02:Ubuntu–192.168.152.102二:前置条件设置全部已安装docker,未安装可根据官方文档安装:https://docs.docker.com/get-docker/1,禁止swap分区K8s的要求,确保禁止掉swap分原创 2021-11-18 10:29:49 · 4423 阅读 · 0 评论 -
grep在shell脚本中使用,判断进程是否存在
在shell中,判断一个进程是否存在,是判断进程数量1:进程判断没有运行进程时,如下显示,只有一条,这条就是这条命令的进程。ubuntu@k8s-node1:~$ ps -ef|grep nginxubuntu 7922 4021 3 09:05 pts/0 00:00:00 grep --color=auto nginx如果进程存在就会显示多条进程信息,其中一条包括命令这条。ubuntu@k8s-node1:~$ ps -ef|grep nginx1997原创 2021-11-16 09:49:01 · 5427 阅读 · 0 评论 -
zabbix通过自定义脚本监控docker服务、docker nginx容器,图文详细
环境介绍:服务端ubuntu:192.168.152.132客户端ubuntu:192.168.152.1501:在客户端安装agentubuntu和centos都支持在线安装,目前,Ubuntu在线安装版本为4.7,Centos为5.0对于agent,版本影响不大,功能都相同,低于server服务器版本的都可以。#Ubuntu安装apt -y install zabbix-agent#centos安装yum -y install zabbix50-agent.x86_64 2:age原创 2021-11-15 15:22:48 · 2734 阅读 · 0 评论 -
docker用docker-compose快速搭建zabbix最新版
编写docker-compose.yml文件根据需求更改自己的配置,这里配置mysql为5.7版本,其他版本默认为最新的。由于80已被占用,这里为8088端口登录。version: "3"services: mysql-server: image: mysql:5.7 container_name: mysql-server command: --character-set-server=utf8 --interactive_timeout=120 --wait_time原创 2021-11-13 12:22:31 · 1692 阅读 · 0 评论 -
Jenkins+Gitlab通过脚本自动部署回滚web项目版本至服务器集群(测试环境和正式环境),图文详细
一:基础环境介绍及准备1:Gitlab服务器ubuntu 192.168.152.131 —参考搭建:Linux安装gitlab,docker安装gitlab教程2:Jenkins服务器ubunu 192.168.152.130 —参考搭建:linux安装Jenkins,或docker安装Jenkins教程同时需要安装maven,ubuntu20.04自带maven3.6版本,不是最新,但不是太旧,直接安装即可.自行安装可参考maven 官网:https://maven.apache.org/i原创 2021-11-12 14:39:26 · 1457 阅读 · 1 评论 -
Linux日志管理神器之Logrotate日志分割,以及crontab自定义定时轮询
前言:有些服务,会自动产生大量的日志文件,如果不限制,会占用磁盘空间。如果单纯的用定时任务crontab删除,又不太灵活,这时需要日志神器logrotate。logrotate工具是系统自带为了方便进行日志管理而产生的一个工具。系统会定时运行 logrotate,一般是每天一次。也是基于定时任务crontab运行的。配置文件:主配置文件位置在 /etc/logrotate.conf,一般配置在 /etc/logrotate.d/子目录下。如系统默认日志配置:$ vim /etc/logrot原创 2021-11-05 09:30:00 · 822 阅读 · 0 评论 -
使用GitLab+Drone CI持续集成自动部署web项目,图文详细
kind: pipeline # 定义对象类型,还有secret和signature两种类型type: docker # 定义流水线类型,还有kubernetes、exec、ssh等类型name: mall-tiny-drone # 定义流水线名称steps: # 定义流水线执行步骤,这些步骤将顺序执行 - name: package # 流水线名称 image: maven:3-jdk-8 # 定义创建容器的Docker镜像 volumes: # 将容器内目录挂载到宿主机,仓库原创 2021-11-04 11:41:56 · 2763 阅读 · 0 评论 -
Linux基于gitlab搭建Drone CI自动集成,图文详细教程
drone简介:drone官方文档:https://docs.drone.io/drone跟Jenkins一样,可实现持续集成,就是可以帮助我们解决重复的代码构建,自动化测试,发布等重复劳动,通过简单一个提交代码的动作,解决接下来要做的很多事。Drone是一种基于容器技术的连续运输系统,所以安装也是基于docker安装。相对于Jenkins,Jenkins虽然有100多种插件可实现复杂的功能,所以操作部署也是同样的复杂。而drone,短小精悍,部署简单,比 Jenkins 语法简单,更加适合 云原原创 2021-11-03 09:30:00 · 2052 阅读 · 0 评论 -
Linux安装Java和tomcat,并添加开机启动服务
Ubuntu可直接在线安装,命令为#更新系统包sudo apt update#安装java,jdk,可自己选择安装版本sudo apt install openjdk-17-jdk#安装tomcat,默认只有tomcat9的sudo apt install tomcat9我环境为centos的,所有直接下载解压安装。一:安装JAVA1. 下载 JDK安装官方下载地址:https://www.oracle.com/java/technologies/downloads/目前最新为jav原创 2021-11-02 10:16:16 · 267 阅读 · 0 评论 -
Gitlab+Jenkins通过钩子实现自动部署web项目,图文详细教程
一:基础环境介绍及准备1:Gitlab服务器:ubuntu 192.168.152.131 —参考搭建:docker快速安装Jenkins2:Jenkins服务器:ubunu 192.168.152.130 —参考搭建:Linux安装gitlab在服务器上生成ssh-keygen,用于配置web服务器和Gitlab服务器。#生成密钥和私钥ssh-keygen#将公钥传给web服务器,实现免密码连接ssh-copy-id -i .ssh/id_rsa.pub root@192.168.152.1原创 2021-10-30 10:03:44 · 2119 阅读 · 0 评论