自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

运维笔记,服务器搭建

  • 博客(94)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 使用 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 1202

原创 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 1233

原创 中小型集群部署,Docker Swarm(集群)使用及部署应用介绍

说到集群,第一个想到的就是k8s,但docker官方也提供了集群和编排解决方案,它允许你将多个 Docker 主机连接在一起,形成一个“群集”(Swarm),并可以在这个 Swarm 上运行和管理你的服务。与Kubernetes相比,Docker Swarm的群集管理功能相对简单,Swarm更适合于小型到中型的容器部署,并且通常用于简单的应用程序部署和管理。如果经常用docker-compose 的人员来说,可以这样容易理解。

2024-03-26 16:31:50 708

原创 自动化代码质量检测平台sonarqube搭建及使用,以及集成gitlab ci提交自动返回结果

Sonar (SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持java, JavaScrip, Scala 等等二十几种编程语言的代码质量管理与检测。SonarQube®是一种自动代码审查工具,用于检测代码中的错误,漏洞和代码异味。它可以与您现有的工作流程集成,以便在项目分支和拉取请求之间进行连续的代码检查。原理架构,这里不多说了,网上一大把,咱们直接开干就完了。

2024-03-14 17:31:02 1327

原创 python爬虫之Scrapy框架,基本介绍使用以及用框架下载图片案例

Scrapy是:由Python语言开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据,只需要实现少量的代码,就能够快速的抓取。Scrapy使用了Twisted异步网络框架来处理网络通信,可以加快我们的下载速度,不用自己去实现异步框架,并且包含了各种中间件接口,可以灵活地实现各种需求。Scrapy可以应用在包括数据挖掘、信息处理或存储历史数据等一系列的程序中,其最初是为页面抓取(更确切地说是网络抓取)而设计的,也可以应用于获取API所返回的数据(例如Amazon A

2022-10-31 16:45:35 6746 1

原创 Python爬虫伪装,请求头User-Agent池,和代理IP池搭建使用

在使用爬虫的时候,很多网站都有一定的反爬措施,甚至在爬取大量的数据或者频繁地访问该网站多次时还可能面临ip被禁,所以这个时候我们通常就可以找一些代理ip,和不用的浏览器来继续爬虫测试。下面就开始来简单地介绍一下User-Agent池和免费代理ip池。

2022-10-25 11:24:16 9527

原创 python爬虫之多线程threading、多进程multiprocessing、协程aiohttp 批量下载图片

对于多任务爬虫来说,多线程、多进程、协程这几种方式处理效率的排序为:aiohttp协程 > 多线程 > 多进程。但是aiohttp协程难度有点复杂,需要了解,而且本人目前没有解决协程下载大尺寸图片不完整的情况,还需要后续继续学习。

2022-10-21 12:38:46 13491 2

原创 python爬虫之selenium+BeautifulSoup库,爬取搜索内容并保存excel

前面文章已经介绍了selenium库使用,及浏览器提取信息相关方法。python爬虫之selenium库现在目标要求,用爬虫通过浏览器,搜索关键词,将搜索到的视频信息存储在excel表中。里面有button_next 为跳转下一页的功能,之所有不用By.CLASS_NAME定位。看html代码可知 下一页 ="

2022-10-14 08:59:07 1943 1

原创 python爬虫之selenium库,浏览器访问搜索页面并提取信息,及隐藏浏览器运行

如果链接简单,爬虫可以通过链接用requests库提取页面信息,如爬取豆瓣top250影片信息,链接简单易懂。爬取豆瓣top250影片信息但如果遇到一些搜索之类的,基于js动态加载的网页,以上就不适合,如爬虫b站,搜索“爬虫”页面,第一页链接如下,第二页又是很长没规律的链接。很难用requests库提取页面。针对以上情况,我们可以通过浏览器直接访问每个页面,然后提取页面。当然是让爬虫自己打开浏览器,输入内容访问,然后提取页面元素。这个过程就要用到 selenium 库。

2022-10-12 17:55:31 9472 1

原创 python爬虫练习之requests+BeautifulSoup库,提取影片信息,并保存至excel

目标:使用 BeautifulSoup + Reuqests,爬取豆瓣上评分最高的250部电影,并保存到excel表格中。python爬虫之reuqests库python爬虫之Beautiful Soup库。

2022-10-05 15:47:45 1224

原创 python爬虫之Beautiful Soup库,基本使用以及提取页面信息

Python 爬虫正则表达式和re库在爬虫过程中,可以利用正则表达式去提取信息,但是有些人觉得比较麻烦。因为花大量时间分析正则表达式。这时候可以用高效的网页解析库Beautiful Soup。Beautiful Soup 是一个HTML/XML 的解析器,主要用于解析和提取 HTML/XML 数据。

2022-10-04 16:12:09 5406

原创 python爬虫之reuqests库,及基本使用

Python 爬虫之urllib库Requests是用python语言基于urllib编写的,该模块主要用来发 送 HTTP 请求,requests 模块比 urllib 模块更简洁,是学习 python 爬虫的较好的http请求模块。不是 python 的内置库,如果没有安装,可以安装先。

2022-10-03 13:25:20 839

原创 Python 爬虫正则表达式和re库,及re库的基本使用,提取单个页面信息

正则表达式是处理字符串的强大工具,它有自己特定的语法结构,有了它,实现字符串的检索、替换、匹配验证都不在话下,正则表达式在所有编程里通用,所以不仅仅是python使用。2:第二个信息,电影名称,有很多地方,但是我们选个唯一明显不重复的,alt= 后面是标签里唯一的,整个标签里面就一个信息,所以这里比较简单,这时正则表达式为。re.findall()在字符串中找到正则表达式所匹配的所有子串,并返回一个列表,如果有多个匹配模式,则返回元组列表,如果没有找到匹配的,则返回空列表。em是唯一的,比较简单。

2022-10-01 11:35:38 2079

原创 搭建自己的直播流媒体服务器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 19136 2

原创 Python 爬虫之urllib库,及urllib库的4个模块基本使用和了解

Python urllib 库用于操作网页 URL,并对网页的内容进行抓取处理。Python3 的 urllib。需要用的就是每个模块的内置方法和函数。

2022-09-19 16:43:23 3350

原创 用acme.sh给网站域名,申请免费SSL永久证书(自动续期)

申请ssl证书,即https有很多,有免费的,也有收费的。如第三方域名管理cloudflare也可以自动添加使用https,而且永久。但是由于有些服务,需要在服务器使用自签证书,所以需要自己申请。免费的可以使用certbot,也可以是使用zeroSSL。Certbot申请免费SSL证书这里,介绍使用acme.sh生成免费的ssl证书,其完整实现了acme协议,并且由纯Shell脚本语言编写,没有过多的依赖项,安装和使用都非常方便。

2022-09-09 12:34:55 13882 2

原创 Linux搭建开源企业云盘Seafile,私有文件同步云盘及基本使用

在日常生活经常需要在不同的设备间同步文件,还有在企业作为公司云存储备份使用。类似的有谷歌云端硬盘,但是作为企业不能统一管理,即没有admin权限管理其他账号,而且免费空间有限。国内的百度网盘,并没有文件同步功能,只支持手动的上传和下载,而且也没有文件历史版本功能。Seafile是一款优秀的开源企业云盘软件,拥有文件版本管理、跨平台文件同步和共享等功能,可以方便自建一个私有的云存储服务。

2022-09-02 15:44:09 5395

原创 Python初级练习小实例(21-50例),1个实例多个例子相互参考

以下所有测试实例来自于菜鸟教程:https://www.runoob.com/python3/python3-examples.html最大公约数,也称最大公因数、最大公因子,指两个或多个整数共有约数中最大的一个。执行结果菜鸟教程参考代码执行以上代码输出结果为:其他人参考代码可按以下思路减少循环次数:当最小值为最大公约数时,直接返回;当最小值不为最大公约数时,最大公约数不会大于最小值的1/2;求最大公约数理应从大到小循环递减求最大。更简洁快速22、Python 最小公倍数算法最小公倍数两个

2022-08-30 16:23:36 327

原创 Python初级练习小实例(1-20例),1个实例多个例子相互参考

设三角形ABC三个角A、B、C的对边分别为a、b、c,三角形ABC的面积为S,则S=“p(p-a)(p-b)(p-c)的算术平方根”。斐波那契数列指的是这样一个数列 0, 1, 1, 2, 3, 5, 8, 13,特别指出:第0项是0,第1项是第一个1。一个大于1的自然数,除了1和它本身外,不能被其他自然数(质数)整除(2, 3, 5, 7等),换句话说就是该数除了1和它本身以外不再有其他的因数。注意点:range 是包含左边,不包含右边,如:range(1,5)范围为: 1,2,3,4。

2022-08-20 18:06:10 1374

原创 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 6732 1

原创 Linux 忘记密码怎么办,CentOS和Ubuntu重置密码方法

rd.break意思是,在系统中断之前将控制权从initramfs系统移交给实际系统,initramfs作用可自行研究,这里不深究。

2022-07-28 15:22:26 2811 1

原创 普罗米修斯Prometheus+Grafana,监控搭建与界面基础配置

httpsPrometheus(普罗米修斯)是一套开源的监控&报警&时间序列数据库的组合,由SoundCloud公司开发。Prometheus基本原理是通过HTTP协议周期性抓取被监控组件的状态,这样做的好处是任意组件只要提供HTTP接口就可以接入监控系统,不需要任何SDK或者其他的集成过程。这样做非常适合虚拟化环境比如VM或者Docker。Prometheus应该是为数不多的适合Docker、Mesos、Kubernetes环境的监控系统之一。...

2022-07-19 11:37:53 16155 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 7639 1

原创 使用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 6255 1

原创 Linux搭建Promtail + Loki + Grafana 轻量日志监控系统

一:简介日志监控告警系统,较为主流的是ELK(Elasticsearch 、 Logstash和Kibana核心套件构成),虽然优点是功能丰富,允许复杂的操作。但是,这些方案往往规模复杂,资源占用高,操作苦难。很多功能往往用不上,大多数查询只关注一定时间范围和一些简单的参数(如host、service等),使用这些解决方案就有点杀鸡用牛刀的感觉了。所以寻找更轻量级的日志监控系统,所以也就有了EFK(elasticsearch+kibana+filebeat),搭建参考:EFK轻量级日志系统搭建另外一

2022-05-18 11:55:02 4417

原创 基于docker快速搭建自己的域名邮箱,mailu邮件服务器

一:简介Mailu.io是一款免费开源且性能强大、功能丰富的域名邮箱系统。它基于Docker, 具有部署简单,可移植性高,备份方便等多种优势。主要的功能:基本的邮件服务器 IMAP IMAP+,SMTP和进阶电子邮件功能 别名,域别名,自定义路由Web访问 多个Webmail管理界面用户功能 别名,自动回复,自动转发,获取帐户管理员功能 全局管理员,公告,每域配额安全 强制启用TLS,Letsencrypt!,DKIM,防病毒扫描程序反垃圾邮件 自主学习 灰名单 DMARC 和 SPF

2022-05-10 12:54:41 22945 13

原创 堡垒机、跳板机JumpServer的搭建,以及使用,图文详细

一、简介为了保证服务器安全,加个堡垒机,所有ssh连接都通过堡垒机来完成,堡垒机也需要有身份认证,授权,访问控制,审计等功能。Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。在公司中,分配人员服务器权限也是相当方便,如:来一个新人,在Jumpserver分配Jumpserver账号即可,人员离职,在Jumpserver删掉人员账号即可。无需担心人员离职留下后门,当然前提是检查防火墙,只允许Jumpserv

2022-04-22 17:12:05 22946 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 15306 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 1897 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 2197

原创 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 4113

原创 MongoDB数据备份还原,及docker中MongoDB备份还原

一: MongoDB数据备份在Mongodb中我们使用mongodump命令来备份MongoDB数据。该命令可以导出所有数据到指定目录中。mongodump命令可以通过参数指定导出的数据量级转存的服务器。1)语法:mongodump命令脚本语法如下:mongodump -h dbhost -d dbname -o dbdirectory参数说明:-h:MongoDB 所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017-d:需要备份的数据库实例,例

2022-03-25 12:41:59 1805 2

原创 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 1721

原创 docker MySQL数据库的备份与还原,以及每天定时自动备份

一:备份查看docker mysqlubuntu@ubuntu:~$ sudo docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESa30ead8a26fc mysql:8.0.27 "docker-entrypoint.s…" 1

2022-03-17 16:48:56 10692 4

原创 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 1219

原创 MySQL操作基础之DCL语句,用户权限管理

DCL(Data Control Language)语句:数据控制语句,用于控制不同数据段直接的许可和访问级别的语句。这些语句定义了数据库、表、字段、用户的访问权限和安全级别。主要的 语句关键字包括grant、revoke 等。DCL 语句主要是DBA 用来管理系统中的对象权限时所使用,一般的开发人员很少使用。1:创建用户CREATE USER示例:创建只能本地登录(localhost)的账号zhangsan,密码为mypassCREATE USER 'zhangsan'@'localhost.

2022-02-16 17:18:22 559

原创 MySQL操作基础之DML语句

MySQL基本操做之DDL(数据定义语言),DML(数据操纵语言),DQL(数据查询语言),DCL(数据控制语言)这里介绍DML语句(数据操纵语言),用于数据的增加、删除和更改,也就是我们常说的增删改。示例表:示例数据库:testDatabase,示例表:myTablemysql root@(none):testDatabase> select * from `myTable` .

2022-02-14 13:00:01 605

原创 网站通过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 20618 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 5964 1

原创 MySQL操作基础之DDL语句

SQL分类SQL语句主要可以划分为以下3个类别。DDL(Data DefinitionLanguages)语句:数据定义语言,这些语句定义了不同的数据段,数据库,表,列,索引等数据库对象。常用的语句关键字主要包括create,drop,alter等。DML(Data Manipulation Language)语句:数据操纵语句,用于添加,删除,更新和查询数据库记录,并检查数据完整性。常用的语句关键字主要包括insert,delete,update,select等。DCL(Data C

2022-01-04 17:22:35 510

CDN推送平台bansys.zip

CDN推送平台bansys.zip

2021-07-30

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除