运维类
文章平均质量分 67
何小有
不会编程的测试不是好玩家!
展开
-
在GitHub找开源项目
在的搜索框里:使用搜索关键词可以在。原创 2023-12-20 13:25:07 · 1556 阅读 · 0 评论 -
Docker 部署 2FAuth 服务
现在可以访问搭建好的。原创 2023-12-08 09:48:58 · 457 阅读 · 0 评论 -
Ubuntu 配置 Github 的 SSH keys
先进入已有的 Git 目录或使用新建的一个 Git 仓库下。设置 Github 用户名和邮箱:生成 SSH 密钥文件:将公钥文件内容打印后复制:完成创建, 验证 Authentication 是否正常:原创 2023-11-11 19:03:49 · 1610 阅读 · 0 评论 -
从 Nginx 日志中分析问题
通常 Nginx 的访问日志和错误日志在同时 Nginx 支持自动切割并压缩日志, 访问日志以格式命名, 错误日志以格式命名, 默认是每天都会产生访问日志和错误日志的.gz文件。通过ls -l命令查看可以看到access.log是当天的访问日志, 可以看到error.log是当天的错误日志。然后.log.[数字]中的数字表示倒退几天, 比如是昨天 (1天前) 的日志、是前天 (2天前) 的日志、是大前天 (3天前) 的日志, 以此类推。可以得知 Nginx 最多可以保存 15 天的日志。原创 2023-11-04 00:37:42 · 325 阅读 · 0 评论 -
Docker 部署 Firefly III 服务
拉取最新版本的 Firefly III 镜像;在本地预先创建好 upload 和 export 目录, 用于映射 Firefly III 容器内的 /var/www/html/storage/upload 和 /var/www/html/storage/export 目录。;使用以下命令来运行 Firefly III 容器;通过 docker ps 命令查看容器的运行信息;现在可以访问搭建好的 Firefly III 网站了;原创 2023-09-24 15:24:56 · 815 阅读 · 0 评论 -
Docker 部署 PostgreSQL 服务
拉取最新版本的在本地预先创建好data目录, 用于映射容器内的目录。使用以下命令来运行-i-t-d--name通过docker ps进入和退出切换当前用户为postgres需要退出时, 使用exit一层一层的退出。原创 2023-09-24 00:21:41 · 480 阅读 · 0 评论 -
Docker 部署 Redis 服务
拉取最新版本的 Redis 镜像;在本地预先创建好 data 目录和 conf/redis.conf 文件;使用以下命令来运行 Redis 容器;通过 docker ps 命令查看容器的运行信息;使用以下命令查看和设置密码;如果抛出 Wrong signature trying to load DB from file 异常, 删除数据文件;原创 2023-09-19 20:17:10 · 575 阅读 · 0 评论 -
Docker 部署 MongoDB 服务
拉取最新版本的 MongoDB 镜像;在本地预先创建好 db 和 configdb 目录, 用于映射 MongoDB 容器内的 /data/db 和 /data/configdb 目录;使用以下命令来运行 MongoDB 容器;通过 docker ps 命令查看容器的运行信息;使用以下命令添加用户并设置密码;使用 mongosh 连接和断开 MongoDB 数据库;上面创建用户时少添加了 dbAdminAnyDatabase 角色, 所以现在修改用户的权限;原创 2023-09-18 22:29:20 · 316 阅读 · 0 评论 -
Docker 部署 Bitwarden RS 服务
Bitwarden RS 服务是官方 Bitwarden server API 的 Rust 重构版。因为 Bitwarden RS 必须要通过 https 才能访问;拉取最新版本的 docker.io/vaultwarden/server 镜像;访问前面配置好的域名访问搭建好的 Bitwarden RS 网站, 并注册一个新账户进入用户主页;私有化设置;现在 注册 和 邀请 功能仍然显示在页面上, 但是实际尝试 注册 和 邀请 会报错误消息;原创 2023-09-17 15:42:26 · 845 阅读 · 1 评论 -
Ubuntu 22 Python 虚拟环境配置
下载 Ubuntu 系统的 virtualenv 依赖;通过 pip 安装 virtualenv 和 virtualenvwrapper 库;在 用户根目录(cd ~) 下创建 .virtualenvs 文件夹;查看 virtualenvwrapper.sh 所在的目录;修改当前用户的 .bashrc 配置文件;在 .bashrc 配置文件的最后添加两行配置;新建一个虚拟的 test_venv 环境;使用 deactivate 命令退出当前虚拟环境;原创 2023-09-17 10:53:57 · 993 阅读 · 0 评论 -
Ubuntu Nginx 配置 SSL 证书
在 Ubuntu 中安装 Nginx 服务;启动 Nginx 服务并设置为开机时自动启动;验证一下 Nginx 服务的当前状态;从云服务提供商处下载适用 Nginx 的 SSL 证书文件;以管理员身份下载证书文件;开始编辑配置文件;动态服务配置;静态服务配置;检测配置文件的有效性, 并且重启 Nginx 服务;原创 2023-09-16 15:50:09 · 1456 阅读 · 0 评论 -
Jenkins 2.4 创建子节点
下打开 PowerShell 窗口,粘贴并执行上面复制的命令,就可以启动子节点了。设置子节点电脑上的执行工作目录,例如在D盘创建一个。需要升级 Java 的版本到 11 或更高版本。)并将这个地址填入,然后在。原创 2023-06-28 15:42:27 · 1446 阅读 · 0 评论 -
使用miniserve快速搭建文件服务
当我们想自己搭建一个 HTTP 文件服务向其他人分享文件,或者往其他设备上传输文件时,又不想花费时间去研究 Nginx、IIS、FTP 这些东西,我们可以通过一键生成简约、美观的文件服务器。访问找到对应系统的客户端版本,的文件非常小,比如 Windows 版本的客户端只有 1.19 MB,Mac 版本只有 1.3 MB,Linux 版本就更小了。#指定目录#指定单个文件#投放网页#设置用户名和密码#随机6位十六进制URL#允许上传文件#允许创建目录#允许手机拍照上传原创 2023-03-18 16:15:30 · 2482 阅读 · 0 评论 -
Python离线解析IP地址
GeoIP:可以按国家、地域位置甚至精确到城市,对企业用户和网站的访客进行精准实时的定位。另外还提供可以 免费 在 本地部署 的 GeoLite2 离线 数据库,可以让我们在不使用第三方接口的情况,解析 IP 地址的地理位置数据。自治域 AS 或者运营商 ISP;IP 地址所属的自治域 AS 或者运营商 ISP;IP 地址所在的国家、地区、城市、经纬度和邮政编码等信息。CSV 文件格式:需要自己实现掩码解析和 ID 查询。MaxMind DB 格式:借助 GeoIP2 库提供的方法,输入 IP 地址就可以进原创 2023-03-16 23:43:01 · 1492 阅读 · 0 评论 -
拿来即用的 Python SSH+SFTP 实现类
一个拿来即用的 Python SSH 和 SFTP 实现类,可用于: - 与 Linux 服务器建立持续交互的 SSH 会话 - 从 Linux 服务器下载远程文件 - 上传本地文件到 Linux 服务器 新创建一个 `linux_client.py` 文件,编写下面的 `LinuxClient` 类代码:然后是调用上面 `LinuxClient` 类的示例代码:最后看下示例代码的控制台打印效果:原创 2023-03-03 15:27:14 · 935 阅读 · 0 评论 -
Python对接LDAP/AD的过程详解
不同公司的 LDAP/AD 服务配置各不相同,很难封装一个通用的方法,所以我们在对接 LDAP/AD 的过程中,需要了解自己公司的 LDAP/AD 服务配置是怎么样的,才能写出正确的对接代码,因此下面将拆解过程并提供相关的文档地址。信息去验证用户的密码是否正确,如果密码正确,就和前面公用账号登录一样可以获取用户信息。到这一步的时候,可以询问 LDAP 服务器当前连接用户是谁?更多具体的情况,就需要实际对接公司的 LDAP/AD 服务时,才会遇到了。不管是那种格式,信息本身的内容是一样的。原创 2023-02-14 15:19:13 · 5260 阅读 · 0 评论 -
使用mongo命令工具操作集合数据
与 MongoDB 建立连接以操作八月创建的历史数据为例。原创 2022-10-08 13:48:54 · 957 阅读 · 0 评论 -
更换PostgreSQL的data并重启服务
【代码】更换PostgreSQL的data并重启服务。原创 2022-08-23 19:01:57 · 1852 阅读 · 0 评论 -
Linux的用户、用户组与文件权限
Linux默认使用Owner-Group-All权限,即通过用户组来管理文件权限,而不是通过用户直接管理。原创 2022-07-21 16:20:16 · 2010 阅读 · 0 评论 -
拿来即用的 Python LDAP 实现类
一个拿来即用的 Python LDAP 实现类,相关配置通过读取环境变量获取:LDAP_SERVER_HOST = [LDAP服务器IP: 127.0.0.1]LDAP_SEARCH_BASE = [LDAP搜索配置: OU=OU,DC=DC,DC=LOCAL]LDAP_USERNAME = [LDAP连接账户: xxxx@xxx.xx]LDAP_PASSWORD = [LDAP连接密码]快速调用方法如下:def ldap_user_auth(username, password):原创 2021-12-08 00:23:15 · 951 阅读 · 0 评论 -
pymongo 4.0的‘Cursor‘ object has no attribute ‘count‘异常
pymongo 模块的 Cursor 对象在 2021年11月30日 之后因为更新到 4.0 版本,删除了 Cursor 类里的 count 方法,以下是 4.0 和 3.12.2 两个版本的 Cursor 类对比:https://github.com/mongodb/mongo-python-driver/blob/4.0/pymongo/cursor.pyhttps://github.com/mongodb/mongo-python-driver/blob/3.12.2/pymongo/curs原创 2021-12-01 14:07:14 · 7041 阅读 · 0 评论 -
基于Rainbond开发Python云原生应用
组件开发这里使用 基于源码中的 Dockerfile 创建组件,因为这种方式能兼容所有类型的项目。识别为 Dockerfile 类型的源码将使用类似于 docker build -t xxx/xxx . 的命令进行镜像构建,因此此方式是灵活性最高的源码编译方式基本结构Python 云原生应用的基本目录结构如下,由 app.py(主程序)、Dockerfile(容器配置)和 requirements.txt(依赖关系)三个文件组成。.├── app.py├── Dockerfile├──原创 2021-01-06 15:14:09 · 659 阅读 · 2 评论 -
VS Code云开发环境
开发环境Linux系统如果是 Windows 10 操作系统,可以安装一个 Windows 10 内置 Linux 子系统如果是其他操作系统,可以通过 VirtualBox 在本地安装一个 Linux 虚拟机如果企业内部有云桌面系统,可以从走流程申请一个 Linux 虚拟机VS Code从官网下载最新版本的 VS Code 编辑器,然后在 VS Code 的扩展里,搜索Microsoft 出品的 Remote - SSH 扩展,点击安装。SSH连接打开 Remote - SSH 扩原创 2020-12-24 11:46:18 · 1017 阅读 · 0 评论 -
用Rainbond快速实现企业云原生
Rainbond 是开源的云原生应用管理平台,开箱即用 的获得全方位的云原生技术能力,包括但不仅限于持续集成、服务治理、架构支撑、多维度应用观测、流量管理等功能。以下是 Rainbond 开源代码的仓库地址:GitHub:https://github.com/goodrain/rainbondRainbond:https://gitee.com/rainbond/Rainbond对于像我这种开发者而言,我不懂运维、底层复杂的容器、K8S等这些技术,那么对我来说,云原生的学习成本是很高的。而 Rai原创 2020-12-11 14:20:17 · 391 阅读 · 2 评论 -
Python DearPyGui 多线程与异步
对于一些需要长时间运行的计算和回调,我们可以使用在单线程上运行的异步方法,使用很简单,只需要调用 run_async_function 方法即可,需要注意的是,使用异步命令运行的方法中,不能调用 DearPyGui 的对象与方法。from dearpygui.core import *from dearpygui.simple import *from time import sleepadd_additional_font(file='MicrosoftYaHei.ttf', size=18.0原创 2020-11-26 21:46:08 · 964 阅读 · 0 评论 -
Python DearPyGui 项目实践
创建主框架这里以一个名为 dear_demo 的项目为例,并在项目下创建几个文件夹:application、data、utils,和两个文件:config.ini 和 main.py,现在的项目结构应该是这样的:\dear_demo # 项目文件夹d----- application # 项目的应用文件夹d----- data # 项目的数据文件夹d----- utils # 项目的工具文件夹-a---- config.ini # 项目的配置原创 2020-11-26 17:48:20 · 2186 阅读 · 0 评论 -
搭建、使用与维护私有PyPi仓库
搭建PyPi仓库安装依赖包pypiserver要搭建PyPi仓库,我们需要使用 pypiserver 库,这是一个最基本的 PyPI 服务器实现库,可以启动一个用来上传和维护Python包的服务器。通过 pip install pypiserver 命令安装 pypiserver 库,该库在 Python 2x 或者 Python 3x 下均运行。passlib默认情况下,Python包的上传操作是无权限管理的,当我们希望使用密码来控制,只有指定用户才可以进行Python包的上传操作的时候,原创 2020-11-23 19:48:36 · 7059 阅读 · 2 评论 -
Django JWT认证实现
配置JWT认证先通过 pip install djangorestframework 命令下载 Django REST framework 库,再通过 pip install djangorestframework-simplejwt 命令下载 Django REST framework Simple JWT 库。它们提供了 JWT 的 Django 应用。配置与编码在 settings.py 文件里加入以下内容,以支持 JWT 认证:REST_FRAMEWORK = { 'DEFAULT_原创 2020-10-09 17:18:59 · 806 阅读 · 0 评论 -
Python3 openpyxl库
Python3 openpyxl库用于读取和写入 Excel 2010 xlsx/xlsm/xltx/xltm 文件。通过 pip install openpyxl 命令下载 openpyxl 库。演示代码通过下面的演示代码,可以快速创建一个名为 sample.xlsx 的表格文件:from openpyxl import Workbookimport datetimewb = Workbook()# 获取活动工作表ws = wb.active# 数据可以直接分配到单元格ws['A1'原创 2020-09-16 23:35:30 · 2626 阅读 · 0 评论 -
Python3 wxPython库
Python3 wxPython库这个第三方库用于开发跨平台的 GUI 应用程序,可以轻松地创建健壮、功能强大的 GUI 程序。通过 pip install wxPython 命令下载 wxPython 库。Hello World下面是业余版本的 Hello World:# 导入wxPython库import wx# 创建一个应用程序对象app = wx.App()# 创建一个框架frm = wx.Frame(None, title="Hello World")# 展示框架frm.原创 2020-08-15 19:00:12 · 4120 阅读 · 1 评论 -
RC4算法及其实践(Hello Password)
Hello Password一个简单的安全密码管理工具。Why? 因为我无法信任网上的密码管理软件。另外,加密数据离开对应的密码管理软件无法解析,这个问题困扰着我。所以,不如自己写一个简简单单的密码管理工具,所以就开始撸了这个小项目,( PyPi地址、 GitHub地址 ),通过以下方式来保证数据安全:云端实时同步:把存储密码的文件放到OneDrive或百度网盘这些支持本地实时同步的云端,这样多台电脑都可以访问密码数据。工具本身干净:只有使用python基础库,没有使用其他第三方库,300行左右原创 2020-06-30 10:31:27 · 1239 阅读 · 0 评论 -
通过Nginx使Django、React App项目共存
服务器是 CentOS 7 系统部署Django项目安装Gunicorn不错的Python WSGI UNIX的HTTP服务器# 安装依赖$ pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple gunicorn# 使用 gunicorn 运行项目$ cd [Django项目路径]$ gunicorn -w 3 -b 0.0.0.0:8001 --log-level=info [Django项目同名文件夹名称].wsgi[202原创 2020-05-30 13:17:48 · 649 阅读 · 0 评论